public QueryHelper(OpsDashboard.MapWidget mapWidget, IList<OpsDashboard.DataSource> dataSources, IEnumerable<Graphic> sourceFeatures) { //A geometry service contains utility methods that provide access to sophisticated and frequently used geometric operations //such as buffer, calculate areas and lengths for geometry etc geometryService = new GeometryService("http://sampleserver6.arcgisonline.com/ArcGIS/rest/services/Utilities/Geometry/GeometryServer"); MapWidget = mapWidget; SourceFeatures = sourceFeatures; TargetDataSources = dataSources; }
public SelectByLocationToolbar(OpsDashboard.MapWidget mapWidget, IList<OpsDashboard.DataSource> DataSources, FeatureLayer sourceLayer) { InitializeComponent(); MapWidget = mapWidget; TargetDataSources = DataSources; SourceLayer = sourceLayer; DataContext = this; }
public GeoFenceViewModel(OD.DataSource dataSource) : base(dataSource) { // init the data members with default values TrackIdFieldName = "GeoFenceId"; NameFieldName = "Name"; CategoryFieldName = "Category"; ActiveFieldName = "Active"; Properties["GeometryServiceUrl"] = @"http://tasks.arcgisonline.com/ArcGIS/rest/services/Geometry/GeometryServer"; Properties["ServiceAreaServiceUrl"] = @"http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/Network/USA/NAServer/Service%20Area"; // init the commands ToggleActiveCommand = new DelegatingCommand(OnToggleActive); }
public StopViewModel(OD.DataSource dataSource, OD.DataSource routesDataSource, StopWidget view) : base(dataSource) { // init _wsTimer _webSocketKeepAliveTimer = new DispatcherTimer(); _webSocketKeepAliveTimer.Interval = new TimeSpan(0, 0, 2); _webSocketKeepAliveTimer.Tick += new EventHandler(OnWebSocketKeepAliveTick); // init _progressDialogTimer _progressDialogTimer = new DispatcherTimer(); _progressDialogTimer.Tick += new EventHandler(OnProgressDialogTimeOut); // init the data members with default values StopsRouteNameFieldName = @"RouteName"; RoutesRouteNameFieldName = @"Route"; Properties["GepHostName"] = @"localhost"; Properties["GepHttpPort"] = @"6180"; Properties["GepHttpsPort"] = @"6143"; Properties["GEP_LOAD_PLAN_ENDPOINT"] = @"geoevent/rest/receiver/route-command-in"; Properties["GEP_ROUTES_CALCULATE_ENDPOINT"] = @"geoevent/rest/receiver/route-update-in"; Properties["GEP_ROUTES_UPDATE_ENDPOINT"] = @"geoevent/rest/receiver/route-update-in"; Properties["GEP_DISPATCH_ENDPOINT"] = @"geoevent/rest/receiver/route-message-in"; Properties["STOPS_ROUTE_NAME_FIELD_NAME"] = @"RouteName"; Properties["ROUTES_ROUTE_NAME_FIELD_NAME"] = @"RouteName"; Properties["ROUTES_UN_ASSIGNED_ROUTE_NAME"] = @"__Unassigned__"; _unassignedRouteName = GetPropValue("ROUTES_UN_ASSIGNED_ROUTE_NAME"); SetRouteDataSource(routesDataSource); // temp _view = view; // init commands DispatchCommand = new DelegatingCommand(OnDispatch); DispatchAllCommand = new DelegatingCommand(OnDispatchAll); UnassignCommand = new DelegatingCommand(OnUnassign); CutCommand = new DelegatingCommand(OnCut); PasteCommand = new DelegatingCommand(OnPaste); PasteOnGroupCommand = new DelegatingCommand(OnPasteOnGroup); _edits = new HashSet<string>(); // Web Socket Event Handlers _wsOnOpenEH = new EventHandler(WebSocket_OnOpen); _wsOnCloseEH = new EventHandler<CloseEventArgs>(WebSocket_OnClose); _wsOnErrorEH = new EventHandler<ErrorEventArgs>(WebSocket_OnError); _wsOnMessageEH = new EventHandler<MessageEventArgs>(WebSocket_OnMessage); }
public AlertViewModel(OD.DataSource dataSource) : base(dataSource) { // init the data members with default values Properties["GepHostName"] = @"localhost"; Properties["GepHttpPort"] = @"6180"; Properties["GepHttpsPort"] = @"6143"; Properties["GEP_INCIDENTS_ENDPOINT"] = @"geoevent/admin/incidents"; Properties["ALERT_ASSIGN_TO_FIELD_ALIAS"] = @"Assigned To"; Properties["ALERT_ASSIGN_TO_URI_PROP"] = @"AssignedTo"; Properties["ALERT_NOTE_FIELD_ALIAS"] = @"Note"; Properties["ALERT_NOTE_URI_PROP"] = @"Note"; Properties["ALERT_DISMISS_STATUS_URI_PROP"] = @"Dismissed"; Properties["ALERT_DISMISSED_VALUE"] = @"true"; // init the commands DismissCommand = new DelegatingCommand(OnDismiss); AssignToCommand = new DelegatingCommand(OnAssignTo); NoteCommand = new DelegatingCommand(OnNote); }
/// <summary> /// Called when a DataSource is removed from the configuration. /// </summary> /// <param name="dataSource">The DataSource being removed.</param> public void OnRemove(OD.DataSource dataSource) { // Respond to data source being removed. The application framework will automatically show the widget as disabled // if it's currently configured data source is removed. if (dataSource.Id == DataSourceId) DataSourceId = null; }
/// <summary> /// Called when a DataSource is updated. Test the DataSource.Id to respond to the DataSource of interest. /// </summary> /// <param name="dataSource">The DataSource being updated.</param> public void OnRefresh(OD.DataSource dataSource) { if (dataSource.Id == DataSourceId) { // if required, respond to the update from the selected data source. consider using an async method. SetDataSource(dataSource); PopulateGrid(); } }
internal MapWidget GetMapWidget(OD.DataSource dataSource) { if (OperationsDashboard.Instance == null) return null; IWidget widget = OperationsDashboard.Instance.FindWidget(dataSource); if (widget is MapWidget) { MapWidget mapWidget = widget as MapWidget; mapWidget.IsDrawingProgressVisible = false; return mapWidget; } return null; }
protected FeatureLayer FindFeatureLayer(OD.DataSource dataSource) { if (dataSource == null) return null; MapWidget mapWidget = GetMapWidget(dataSource); if (mapWidget == null) return null; return mapWidget.FindFeatureLayer(dataSource); }
public static async Task<GraphicsLayer> CreateCustomLayer(FeatureLayer featureLayer, OD.DataSource dataSource) { if (featureLayer == null || dataSource == null) return null; GraphicsLayer customLayer = new GraphicsLayer(); customLayer.DisplayName = "Edit - " + featureLayer.DisplayName; customLayer.Renderer = featureLayer.Renderer; // Execute an async query OD.Query query = new OD.Query(); query.ReturnGeometry = true; OD.QueryResult queryResult = await dataSource.ExecuteQueryAsync(query); if (queryResult.Canceled || queryResult.Features == null) return null; CopyGraphics(queryResult.Features, customLayer.Graphics); return customLayer; }
async public void Update(OD.DataSource dataSource) { if (dataSource == null) return; if (SkipUpdates) return; if (InEditMode) return; // Execute an async query OD.Query query = new OD.Query() { SortField = SortByFieldName1, SortOrder = ESRI.ArcGIS.Client.Tasks.SortOrder.Ascending, ReturnGeometry = true }; OD.QueryResult queryResult = await dataSource.ExecuteQueryAsync(query); if (queryResult.Canceled || queryResult.Features == null) { Items.Clear(); return; } //hk - RESEARCH THIS APPROACH /* List<ListItem> items = new List<ListItem>(); int i = 0; foreach (var result in queryResult.Features) { items.Add(new ListItem(this, result, dataSource)); if (++i == ListWidget.MaxCount) break; } */ try { SetDataSource(dataSource); Update(queryResult.Features); } catch (Exception ex) { Log.TraceException("Updating " + dataSource.Name, ex); } }
public void SetDataSource(OD.DataSource dataSource) { if (_dataSource != dataSource) { // this will cause the schema to get recreated _schema = null; // clear the grouping _groupByColumnViewModels = null; _dataSource = dataSource; _map = GetMap(); _featureLayer = FindFeatureLayer(_dataSource); } }
public BaseDataGridViewModel(OD.DataSource dataSource) { ViewModel = this; Properties = new Dictionary<string, string>(); InEditMode = false; ConvertToLocalTimeZone = true; // init commands PanToCommand = new DelegatingCommand(OnPanTo); ZoomToCommand = new DelegatingCommand(OnZoomTo); HighlightCommand = new DelegatingCommand(OnHighlight); FollowCommand = new DelegatingCommand(OnFollow); StopFollowCommand = new DelegatingCommand(OnStopFollow); DeleteItemCommand = new DelegatingCommand(OnDeleteItem); DeleteAllCommand = new DelegatingCommand(OnDeleteAll); GroupByDelegatingCommand = new DelegatingCommand(OnGroupByAction); Update(dataSource); }
public void SetRouteDataSource(OD.DataSource routeDataSource) { _routesDataSource = routeDataSource; }