Please help.....
What code changes are necessary to make the popup feature attribute table of the Edit Widget and Smart Editor Widget draggable? I was able to do this with normal popups within the Foldable Theme but not with the editors attribute popup.
Rich
Solved! Go to Solution.
Rich,
Here is how to do that. In the Widget.js.
(lines 32 and 37 make sure to add the comma on line 31 too):
define([
'dojo/_base/declare',
'dojo/_base/lang',
'dojo/_base/array',
'dojo/_base/html',
'dojo/i18n!esri/nls/jsapi',
'dojo/on',
'dojo/query',
'dojo/json',
'dojo/Deferred',
'dojo/aspect',
'dojo/promise/all',
'dijit/_WidgetsInTemplateMixin',
'jimu/BaseWidget',
'jimu/MapManager',
'jimu/LayerInfos/LayerInfos',
'jimu/dijit/LoadingShelter',
'jimu/utils',
'jimu/portalUrlUtils',
'jimu/SelectionManager',
'jimu/Role',
'esri/dijit/editing/Editor',
'esri/dijit/Popup',
"esri/dijit/editing/TemplatePicker",
"esri/geometry/Extent",
"esri/geometry/Point",
"esri/renderers/jsonUtils",
"dijit/form/Button",
"./utils",
'./FilterEditor',
'./RelatedRecordsEditor',
'dojo/dnd/Moveable'
],
function(declare, lang, array, html, esriBundle, on, query, Json, Deferred, aspect, all,
_WidgetsInTemplateMixin, BaseWidget, MapManager, LayerInfos, LoadingShelter,
jimuUtils, portalUrlUtils, SelectionManager, Role, Editor, Popup, TemplatePicker,
Extent, Point, rendererJsonUtils, Button, editUtils, FilterEditor, RelatedRecordsEditor, Moveable) {
Add lines 8 - 11:
startup: function() {
this.inherited(arguments);
this.editPopup = new Popup(null, html.create("div",
{"class":"jimu-widget-edit-infoWindow"},
null,
this.map.root));
var handle = query(".title", this.editPopup.domNode)[0];
var dnd = new Moveable(this.editPopup.domNode, {
handle: handle
});
this.loading = new LoadingShelter({
hidden: true
});
this.loading.placeAt(this.domNode);
},
Rich,
Here is how to do that. In the Widget.js.
(lines 32 and 37 make sure to add the comma on line 31 too):
define([
'dojo/_base/declare',
'dojo/_base/lang',
'dojo/_base/array',
'dojo/_base/html',
'dojo/i18n!esri/nls/jsapi',
'dojo/on',
'dojo/query',
'dojo/json',
'dojo/Deferred',
'dojo/aspect',
'dojo/promise/all',
'dijit/_WidgetsInTemplateMixin',
'jimu/BaseWidget',
'jimu/MapManager',
'jimu/LayerInfos/LayerInfos',
'jimu/dijit/LoadingShelter',
'jimu/utils',
'jimu/portalUrlUtils',
'jimu/SelectionManager',
'jimu/Role',
'esri/dijit/editing/Editor',
'esri/dijit/Popup',
"esri/dijit/editing/TemplatePicker",
"esri/geometry/Extent",
"esri/geometry/Point",
"esri/renderers/jsonUtils",
"dijit/form/Button",
"./utils",
'./FilterEditor',
'./RelatedRecordsEditor',
'dojo/dnd/Moveable'
],
function(declare, lang, array, html, esriBundle, on, query, Json, Deferred, aspect, all,
_WidgetsInTemplateMixin, BaseWidget, MapManager, LayerInfos, LoadingShelter,
jimuUtils, portalUrlUtils, SelectionManager, Role, Editor, Popup, TemplatePicker,
Extent, Point, rendererJsonUtils, Button, editUtils, FilterEditor, RelatedRecordsEditor, Moveable) {
Add lines 8 - 11:
startup: function() {
this.inherited(arguments);
this.editPopup = new Popup(null, html.create("div",
{"class":"jimu-widget-edit-infoWindow"},
null,
this.map.root));
var handle = query(".title", this.editPopup.domNode)[0];
var dnd = new Moveable(this.editPopup.domNode, {
handle: handle
});
this.loading = new LoadingShelter({
hidden: true
});
this.loading.placeAt(this.domNode);
},
Thank You!
Works perfect!