public override void UpdateDownloadPriority(TileSource tileSource, int priority) { AsyncTileRequest tileRequest; if (this.tileRequests.TryGetValue(tileSource, out tileRequest)) { tileRequest.NetworkPriority = (NetworkPriority)priority; } }
public override void Download(TileInfo tileInfo, TileSource tileSource, AsyncTileRequestCompletedHandler callback, NetworkPriority networkPriority) { AsyncTileRequest tileRequest; if (this.tileRequests.TryGetValue(tileSource, out tileRequest)) { throw new InvalidOperationException("Multiple concurrent downloads of the same tile is not supported."); } AsyncTileRequestQueue.Instance.CreateRequest(tileSource.GetUri(tileInfo), tileInfo, networkPriority, callback); }
public override void Cancel(TileSource tileSource) { AsyncTileRequest tileRequest; if (!this.tileRequests.TryGetValue(tileSource, out tileRequest)) { throw new InvalidOperationException(Messages.TileInProgressCancel); } tileRequest.IsAborted = true; tileRequest.AbortIfInQueue(); tileRequests.Remove(tileSource); }
public TileLayer(TileSource tileSource) : this(tileSource, Utility.CreateUniqueId()) { }
public TileLayer(TileSource tileSource, string id) : base(id) { SetTileSource(tileSource); }
public TileLayer(TileSource tileSource, string id) : base(tileSource, id) { innerSource = tileSource; }