Skip to content

Commit 28047e4

Browse files
committed
fix up loading spinner and show/hide label picker if no selections provided
1 parent d03b9bb commit 28047e4

File tree

2 files changed

+11
-3
lines changed

2 files changed

+11
-3
lines changed

widgets/LabelLayer.js

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -263,6 +263,7 @@ define([
263263
this.labelInfos[layerId][sublayer].selections;
264264
this.tabContainer.selectChild(this.tabBasic);
265265
if (hasSelections) {
266+
this.set('hasLabels', true);
266267
this.emptyStore(this.labelSelectionStore);
267268
this.labelInfos[layerId][sublayer].selections.forEach(lang.hitch(this, function (labelObj) {
268269
labelObj.id = '_' + count++;
@@ -272,12 +273,15 @@ define([
272273
this.labelSelect.set('value', '_' + 1);
273274
this.labelTextbox.set('value', this.labelSelectionStore.get('_' + 1).value);
274275
this.addSelectedLabels();
275-
domClass.remove(this.defaultLabelWrapper, 'dijitHidden');
276276
} else {
277-
domClass.add(this.defaultLabelWrapper, 'dijitHidden');
277+
this.set('hasLabels', false);
278278
}
279279
},
280280
_setFields: function (fields) {
281+
if (!fields.length) {
282+
return;
283+
}
284+
this.set('hasLabels', true);
281285

282286
fields.forEach(lang.hitch(this, function (f) {
283287
this.labelSelectionStore.put({
@@ -287,6 +291,10 @@ define([
287291
});
288292
}));
289293
},
294+
hasLabels: false,
295+
_setHasLabelsAttr: function (labels) {
296+
domClass[labels ? 'remove' : 'add'](this.fieldSpinner, 'dijitHidden');
297+
},
290298
/**
291299
* Display a field loading spinner
292300
* set using `this.set('fieldsLoading', true)`

widgets/LabelLayer/templates/LabelLayer.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,9 @@
1717
<div data-dojo-type="dijit/layout/TabContainer" data-dojo-attach-point="tabContainer" style="height:82%;">
1818
<div data-dojo-type="dijit/layout/ContentPane" title="Labels" data-dojo-attach-point="tabBasic">
1919

20+
<span data-dojo-attach-point="fieldSpinner" class="dijitHidden"><i class="fa fa-spinner fa-spin"></i> Loading fields...</span>
2021
<div data-dojo-attach-point="defaultLabelWrapper">
2122
<label for="fieldSelect">${i18n.labelSelect.label}:
22-
<span data-dojo-attach-point="fieldSpinner" class="dijitHidden"><i class="fa fa-spinner fa-spin"></i></span>
2323
</label>
2424
<br />
2525
<input data-dojo-type="dijit/form/FilteringSelect" data-dojo-props="

0 commit comments

Comments
 (0)