protected virtual void RenderTagsActionsTabs() { BingSearchResponse bsr = this.SearchResponse as BingSearchResponse; KapiResponse ksr = this.SearchResponse as KapiResponse; if (ksr != null && ksr.Tags != null) { foreach (var t in ksr.Tags) { var vm = new TagViewModel(t); this.Tags.Add(vm); this.FlattendTagsAndActions.Add(vm); foreach (var a in vm.FilteredActions) { this.FlattendTagsAndActions.Add(a); } } this.ResponseItemsTabs.Add(new KeyValuePair <string, object>("Tags", this.FlattendTagsAndActions)); this.ResponseItemsTabs.Add(new KeyValuePair <string, object>("Response", new MyJToken() { JToken = ksr.KapiResponseJson })); this.ResponseItemsTabs.Add(new KeyValuePair <string, object>("Request", new MyJToken() { JToken = ksr.KapiRequestJson })); if (ksr.MiscInfo != null) { foreach (var kvp in ksr.MiscInfo) { this.ResponseItemsTabs.Add(new KeyValuePair <string, object>(kvp.Key, new MyJToken() { JToken = kvp.Value })); } } } }
protected virtual void RenderBoundingBoxesForTags() { KapiResponse ksr = this.SearchResponse as VSPing.Models.KapiResponse; if (ksr == null || ksr.Tags == null) { return; } foreach (var tag in ksr.Tags) { if ((tag.BoundingBox?.DisplayRectangle?.IsBounded ?? false) == false) { continue; } BoundingBox bb = new TagsBoundingBox(tag.DisplayName, tag.BoundingBox); this.CanvasItems.Add(bb); } this.UpdateBoundingBoxPositions(); }
protected virtual void RenderDefaultTagsResults() { BingSearchResponse bsr = this.SearchResponse as VSPing.Models.BingSearchResponse; KapiResponse ksr = this.SearchResponse as VSPing.Models.KapiResponse; if (bsr != null) // Signals we got a correct response -> Need to update all of our containers { foreach (var r in bsr.VisualSearchResults) { this.VisualSearchResults.Add(new SearchResultViewModel(r)); } foreach (var r in bsr.ProductSearchResults) { this.ProductSearchResults.Add(new SearchResultViewModel(r)); } foreach (var r in bsr.PagesIncludingSearchResults) { this.PagesIncludingSearchResults.Add(new SearchResultViewModel(r)); } } }