|
POST
|
That did something! At least now I see some kind of tab-thing -- it's not functional and I can't seem to add another tab, but it's definitely different from where I was. I'm looking at and incorporating the Geoprocessing widget into the css, html and js -- but it's really complex and I don't think this is the best approach to try and implement tabs into a simple vanilla widget. I'll mark your last answer as correct but I'm still not progressing as I had hoped with this. Thanks for your assistance!
... View more
01-22-2018
07:20 AM
|
0
|
18
|
3065
|
|
POST
|
Hi Robert -- yes, it's in both places! define(["dojo/_base/declare",
"dojo/_base/lang",
"dojo/_base/Color",
"dojo/_base/array",
"dojo/dom-construct",
"dojo/dom-class",
"dojo/keys",
"dojo/on",
"dojo/Deferred",
"jimu/BaseWidget",
"dijit/_WidgetsInTemplateMixin",
"dijit/layout/TabContainer"
],
function(declare,
lang,
Color,
array,
domConstruct,
domClass,
keys,
on,
Deferred,
BaseWidget,
_WidgetsInTemplateMixin,
TabContainer) {
return declare([BaseWidget,
_WidgetsInTemplateMixin
], {
// Custom widget code goes here
baseClass: "jimu-widget-customwidget",
LoadingIndicator: null,
currentFeatures: null,
printOutlineLayer: null,
printOutlineConnects: [],
_isPreparedExhibit: false,
startup: function() {
// summary:
// Called on initial widget load
// This function sets all of our configurable variables to those set in the settings
// page/file.
this.tab = new TabContainer({
tabs: [{
title: this.nls.input,
content: this.inputPaneNode
}, {
title: this.nls.output,
content: this.outputPaneNode
}],
selected: this.nls.input
});
this.tab.placeAt(this.domNode);
this.tab.startup();
window.map = this.map;
window.widget = this;
... View more
01-22-2018
06:28 AM
|
0
|
20
|
3065
|
|
POST
|
Not a problem, Robert. This is essentially what I have after the declare() and function() --- both have the _WidgetsInTemplateMixin references. //To create a widget, you need to derive from BaseWidget.
return declare([BaseWidget,
_WidgetsInTemplateMixin
], {
// Custom widget code goes here
baseClass: "jimu-widget-customwidget",
LoadingIndicator: null,
currentFeatures: null,
printOutlineLayer: null,
printOutlineConnects: [],
_isPreparedExhibit: false,
startup: function() {
// summary:
// Called on initial widget load
// This function sets all of our configurable variables to those set in the settings
// page/file.
this.tab = new TabContainer({
tabs: [{
title: this.nls.input,
content: this.inputPaneNode
}, {
title: this.nls.output,
content: this.outputPaneNode
}],
selected: this.nls.input
});
this.tab.placeAt(this.domNode);
this.tab.startup();
window.map = this.map;
window.widget = this;
this.inherited(arguments);
this.geoLayerUrl = this.config.geoLayerUrl;
this.lookupLayerUrl = this.config.lookupLayerUrl;
this.majorRoadsUrl = this.config.majorRoadsUrl;
this.streetsUrl = this.config.streetsUrl;
this.countyUrl = this.config.countyUrl;
this.countyFilterGPUrl = this.config.countyFilterGPUrl;
this.printTaskUrl = this.config.printTaskUrl;
this.geometryServiceUrl = this.config.geometryServiceUrl;
this.permitUrl = this.config.permitUrl;
this.canalLayerUrl = this.config.canalLayerUrl;
this.queryTask = new QueryTask(this.lookupLayerUrl + "/1");
this.adminQueryTask = new QueryTask(this.lookupLayerUrl + "/3");
this.populatePermitFieldData();
this.createFacilityFeatureLayer();
},
... View more
01-19-2018
02:10 PM
|
0
|
22
|
3629
|
|
POST
|
No worry Robert. I'll check into the widgetsintemplate -- thanks! I have "dijit/_WidgetsInTemplateMixin" in the define
... View more
01-19-2018
01:50 PM
|
0
|
24
|
3629
|
|
POST
|
That looks like it's right from the Geoprocessing Widget.js I added that in my startup: function() but no tabs appear on the widget panel when it opens (no errors and widget does open). I want the "AppNo" label & text box and "Query" button placed on a tab that appears at the top.
... View more
01-19-2018
01:38 PM
|
0
|
26
|
3629
|
|
POST
|
Thank you, Ken. Very much appreciated. However, I am looking for a way to add tabs to an actual widget that is launched/opened --- for example the Geoprocessing Widget has two tabs. Again, thank you!
... View more
01-19-2018
10:27 AM
|
0
|
28
|
3629
|
|
POST
|
LaunchPad theme WABDev 2.5 Custom Widget I'm looking for the simplest, most straight forward example of adding 2 tabs to a new widget (an absolute vanilla panel). THIS thread seemed to be close but I'm not seeing the expected result (no CSS example?). Looking for the most basic form of HTML, JS and CSS to get this implemented. TIA
... View more
01-19-2018
08:44 AM
|
0
|
57
|
18415
|
|
POST
|
The example at http://desktop.arcgis.com/en/arcmap/10.3/tools/production-mapping-toolbox/extract-data.htm shows a selection being applied to the input feature layer as well as a test to make sure there is only 1 feature selected before creating the value table of input datasets. I'm simply not familiar with this tool and what it is supposed to accomplish but it looks like you are attempting to initiate the tool over and over on the unique data within the gdb rather than generating a value table of input datasets and executing the tool once with this parameter. Instead of executing on each input dataset, arcpy.ExtractData_production("TEST.DBO.Boundaries_And_AOIs",GDB,"DO_NOT_REUSE","","","")
arcpy.ExtractData_production("TEST.DBO.Air_Photo_Footprints",GDB,"DO_NOT_REUSE","","","")
arcpy.ExtractData_production("TEST.DBO.Elevation",GDB,"DO_NOT_REUSE","","","")
arcpy.ExtractData_production("TEST.DBO.GridsAndGrats",GDB,"DO_NOT_REUSE","","","") The example shows that each of these need to be as a single input parameter, #change your workspace to the folder rather than the sde connection file
arcpy.env.workspace = "C:/GDB/"
# create a value table of input datasets and filter options
inDatasets="RESTON DB.sde/TEST.DBO.Boundaries_And_AOIs;RESTON DB.sde/TEST.DBO.Air_Photo_Footprints;RESTON DB.sde/TEST.DBO.Elevation;RESTON DB.sde/TEST.DBO.GridsAndGrats ALL_ROWS"
# extract data
reuseSchema="DO_NOT_REUSE"
useFilter="FILTER_BY_GEOMETRY"
filterType="CONTAINS"
arcpy.ExtractData_production(inDatasets,extractGdb,reuseSchema,useFilter,filterType,inFeaturesLyr)
... View more
01-04-2018
05:48 AM
|
0
|
0
|
615
|
|
POST
|
Maybe a path issue? Try, outputWS = r'X:\GIS_Final\data\basedata\basemap\Data\Working\Python_Automated_Scripts\GRSM.sde'
outputName = r'GRSM.DBO.Boundaries_And_AOIs'
inputFC = os.path.join(outputWS, outputName)
arcpy.ExtractData_production(inputFC,"USE_FILTERS", GDB,"DO_NOT_REUSE","NO_FILTER_BY_GEOMETRY","INTERSECTS","")
... View more
01-03-2018
08:11 AM
|
0
|
2
|
2451
|
|
POST
|
Ah I see. The "client_id" parameter is the AppId of the AGOL item. This works as expected: https://orgdomain.maps.arcgis.com/sharing/oauth2/authorize?client_id=<AGOL WAB AppId Value>&response_type=token&state=%7B%22portalUrl%22%3A%22http%3A%2F%2Forgdomain.maps.arcgis.com%22%7D&expiration=20159&redirect_uri=https%3A%2F%2Fapps.orgdomain.com%2FWABFolder%2FAPPNAME%2Findex.html
... View more
12-21-2017
07:44 AM
|
1
|
0
|
729
|
|
POST
|
Details: AGOL is an org site Deployed WAB product created with WAB Developer 2.5 WAB deployed to our domain Deployed WAB's AGOL item is shared publicly WAB opens as desired from the url just fine Question: Is there a way to open this WAB in a way that immediately takes the user to our AGOL org login (oAuth)? That is, we'd like to launch this WAB as if it is not shared publicly thereby redirecting to the oAuth login. Reason: We want our internal users to open this WAB by logging in first. Something like, https://orgdomain.maps.arcgis.com/sharing/oauth2/authorize?client_id=UyH4sddQUW7TqrBMgJTC&response_type=token&state=%7B%22portalUrl%22%3A%22http%3A%2F%2Forgdomain.maps.arcgis.com%22%7D&expiration=20159&redirect_uri=https%3A%2F%2Fapps.orgdomain.com%2FWABFolder%2FAPPNAME%2Findex.html
... View more
12-21-2017
07:31 AM
|
0
|
1
|
1035
|
|
POST
|
You forget 100x's the amount of JavaScript I know. Thanks!
... View more
12-20-2017
06:48 AM
|
0
|
0
|
1458
|
|
POST
|
Thanks for the suggestion, looks promising. I can see the request being made to the World_Dark_Gray_Base service but it doesn't change in the map display from the topo (what is saved in the web map).
... View more
12-20-2017
06:30 AM
|
0
|
2
|
1458
|
|
POST
|
I'm looking for the simplest method/example on how to set a specific ESRI basemap upon open of a widget (any one, doesn't matter) and then set it to a different specific ESRI basemap when widget closes. Always just a binary setting: basemap "x" on open, basemap "y" on close. Thanks!
... View more
12-19-2017
01:54 PM
|
0
|
4
|
1530
|
|
POST
|
Thanks! -- I think the missing part was I really just needed a second .iteritems() instance that captures the attributes along with the geometry info.
... View more
12-19-2017
12:36 PM
|
0
|
0
|
3408
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | 02-17-2020 10:47 AM | |
| 1 | 10-25-2022 11:46 AM | |
| 1 | 08-08-2022 01:40 PM | |
| 1 | 02-15-2019 08:21 AM | |
| 2 | 08-14-2023 07:14 AM |
| Online Status |
Offline
|
| Date Last Visited |
01-22-2025
02:28 PM
|