annotate src/djol/IdentifyGroup.js @ 8:f0035923ff3e

добавлена библиотека для работы с openlayers 3+
author cin
date Mon, 21 Aug 2017 17:47:00 +0300
parents
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 [
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
3 "implab/safe",
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
4 'dijit/_WidgetBase',
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
5 'dijit/_TemplatedMixin',
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
6 "dijit/_WidgetsInTemplateMixin",
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
7 "dijit/layout/_LayoutWidget",
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
8 "dijit/layout/ContentPane",
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
9 "dojo/_base/declare",
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
10 "dojo/dom-construct",
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
11 "dojo/on",
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
12 "ol3/IdentifyItem" ],
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
13 function(
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
14 safe,
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
15 _WidgetBase,
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
16 _TemplatedMixin,
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
17 _WidgetsInTemplateMixin,
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
18 _LayoutWidget,
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
19 ContentPane,
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
20 declare,
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
21 domConstruct,
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
22 on,
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
23 IdentifyItem) {
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
24
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
25 return declare(
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
26 [ _LayoutWidget, _TemplatedMixin, _WidgetsInTemplateMixin ],
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
27 {
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
28
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
29 /**
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
30 */
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
31 _empty : true,
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
32 /**
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
33 */
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
34 layerName : null,
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
35 /**
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
36 * Шаблон всего widget
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
37 */
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
38 templateString : "<div class='identify-item-group'><div data-dojo-attach-point='identifyItemGroupTitle' class='identify-item-group-title'></div><div class='identify-item-group-content-container' data-dojo-attach-point='containerNode'></div></div>",
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
39
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
40 itemTemplate : "",
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
41
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
42 title : null,
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
43
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
44 /**
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
45 * Метод из widget.lifecycle
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
46 */
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
47 postCreate : function() {
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
48 var me = this;
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
49 if (typeof this.title == "string") {
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
50 this.identifyItemGroupTitle.innerHTML = me.title;
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
51 } else if (me.title && me.title.placeAt) {
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
52 me.title.placeAt(me.identifyItemGroupTitle, "only");
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
53 } else {
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
54 domConstruct.place(
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
55 me.title,
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
56 me.identifyItemGroupTitle,
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
57 "only");
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
58 }
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
59 on(this.domNode, "click", function() {
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
60 if ("function" == typeof me.callback) {
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
61 me.callback();
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
62 }
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
63 });
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
64 },
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
65
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
66 addItem : function(options) {
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
67 safe.argumentNotNull(options, "options");
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
68 safe.argumentNotNull(options.model, "options.model");
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
69
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
70 if (options.model) {
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
71
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
72 var item = new IdentifyItem({
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
73 title : options.title || this.itemTemplate,
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
74 model : options.model,
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
75 callback : options.callback
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
76 });
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
77 this.addChild(item);
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
78 this._empty = false;
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
79 } else {
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
80 console
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
81 .error("Не задано необходимое свойство layerFeature");
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
82 }
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
83 },
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
84
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
85 isEmpty : function() {
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
86 return this._empty;
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
87 }
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
88 });
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
89 });