public void SetSearchSection(string category, string[] searchResults) { var groups = new List <string>(searchResults.Length); var groupsExpandable = new List <bool>(searchResults.Length); var groupToChildren = new Dictionary <string, List <string> >(); var itemsSource = new List <SearchMenuListItem>(); foreach (var str in searchResults) { var jObject = JObject.Parse(str); var item = new SearchMenuListItem(); item.Name = jObject["name"].Value <string>(); item.Details = jObject["details"].Value <string>(); JToken iconStringToken; var iconString = jObject.TryGetValue("icon", out iconStringToken) ? iconStringToken.Value <string>() : "misc"; item.Icon = new System.Windows.Media.Imaging.BitmapImage(ViewHelpers.MakeUriForImage(string.Format("icon1_{0}.png", iconString))); itemsSource.Add(item); groups.Add(str); groupsExpandable.Add(false); groupToChildren.Add(str, new List <string>()); } m_resultListAdapter.SetData(itemsSource, groups, groupsExpandable, groupToChildren); m_resultsSpinner.Visibility = Visibility.Hidden; m_resultsClearButton.Visibility = Visibility.Visible; m_searchArrow.Visibility = Visibility.Visible; m_resultsSeparator.Visibility = Visibility.Visible; m_searchInFlight = false; }
protected override void DisplayCustomPoiInfo(Object modelObject) { ExampleApp.SearchResultModelCLI model = modelObject as ExampleApp.SearchResultModelCLI; YelpResultModel yelpResultModel = YelpResultModel.FromResultModel(model); var mainGrid = (Application.Current.MainWindow as MainWindow).MainGrid; var screenWidth = mainGrid.ActualWidth; m_closing = false; TitleText = model.Title; AddressText = model.Subtitle.Replace(", ", "," + Environment.NewLine); PhoneText = yelpResultModel.Phone; HumanReadableTagsText = string.Join(", ", model.HumanReadableTags); ReviewText = string.Join(Environment.NewLine, yelpResultModel.Reviews); TagIcon = SearchResultPoiViewIconProvider.GetIconForTag(model.IconKey); PoiViewRatingCountText = yelpResultModel.ReviewCount > 0 ? yelpResultModel.ReviewCount.ToString() : string.Empty; RatingsImage.Source = null; m_contentContainer.ScrollToTop(); if (yelpResultModel.ReviewCount > 0 && !string.IsNullOrEmpty(yelpResultModel.RatingsImageUrl)) { RatingsImage.Source = new BitmapImage(ViewHelpers.MakeUriForImage(string.Format("{0}.png", yelpResultModel.RatingsImageUrl))); } if (string.IsNullOrEmpty(yelpResultModel.ImageUrl)) { m_previewImageSpinner.Visibility = Visibility.Hidden; m_imageGradient.Visibility = Visibility.Collapsed; m_poiImageAndGradientContainer.Visibility = Visibility.Collapsed; m_detailsContainer.Height = Double.NaN; } else { m_previewImageSpinner.Visibility = Visibility.Visible; m_imageGradient.Visibility = Visibility.Visible; m_poiImageAndGradientContainer.Visibility = Visibility.Visible; m_detailsContainer.Height = 250; } RatingCountVisibility = !string.IsNullOrEmpty(yelpResultModel.RatingsImageUrl) && yelpResultModel.ReviewCount > 0 ? Visibility.Visible : Visibility.Collapsed; Url = yelpResultModel.WebUrl; if (string.IsNullOrEmpty(ReviewText)) { m_reviewsIcon.Visibility = Visibility.Hidden; } else { m_reviewsIcon.Visibility = Visibility.Visible; } m_poiImageContainer.Visibility = Visibility.Visible; m_poiImage.Visibility = Visibility.Hidden; ShowAll(); }
public WatermarkViewDialogViewModel(string title, string message, string acceptButton, string cancelButton, ImageSource watermarkLogo, string watermarkUrl, int maxQRCodeSize) { TitleText = title; MessageText = message; AcceptButtonText = acceptButton; CancelButtonText = cancelButton; WatermarkLogoImageSource = watermarkLogo; WatermarkQRCodeImageSource = ViewHelpers.GetQRCodeBitmapSourceFromURL(watermarkUrl, maxQRCodeSize); }
private void OnLoadedAddVirtualKeyboardFocusHandlers() { foreach (var child in ViewHelpers.FindChildrenOfType <TextBox>(m_currentWindow.MainGrid.Children)) { child.PreviewMouseDown += (o, e) => ShowVirtualKeyboard(); child.GotFocus += (o, e) => ShowVirtualKeyboard(); child.LostFocus += (o, e) => HideVirtualKeyboard(); InputMethod.SetIsInputMethodEnabled(child, false); } }
public SubMenuListItem(string json, int zIndex) : base(json, false, zIndex) { JObject parsed = JObject.Parse(json); JToken iconField; if (parsed.TryGetValue("icon", out iconField)) { m_iconString = iconField.Value <string>(); m_icon = new BitmapImage(ViewHelpers.MakeUriForImage(string.Format("icon1_{0}.png", m_iconString))); } }
void AddButtonClickHandlers() { foreach (var button in ViewHelpers.FindChildrenOfType <Button>(this)) { button.Loaded += (sender, ev) => { string digit = button.Content?.ToString(); if (IsPasswordButtonLabel(digit)) { button.Click += (o, e) => OnKeyClicked(digit); } }; } }
public InteriorsExplorerView(IntPtr nativeCallerPointer) { MainWindow mainWindow = (MainWindow)Application.Current.MainWindow; mainWindow.MainGrid.Children.Add(this); m_nativeCallerPointer = nativeCallerPointer; mainWindow.ContentRendered += (o, e) => { SearchMenuView searchMenuView = ViewHelpers.FindChildrenOfType <SearchMenuView>(mainWindow.MainGrid.Children).Single(); CompassView compassView = ViewHelpers.FindChildrenOfType <CompassView>(mainWindow.MainGrid.Children).Single(); m_tutorialView.SetTooltipControls(mainWindow, searchMenuView.GetSearchButton(), compassView.GetCompassElement(), m_sliderThumb, m_dismissButton); }; }
public override void OnApplyTemplate() { base.OnApplyTemplate(); TutorialTooltipView mapModeDialog = (TutorialTooltipView)GetTemplateChild(MapModeDialogName); m_positionedMapModeDialog = new PositionedDialog(mapModeDialog, (x, y, w, h) => { ((TranslateTransform)mapModeDialog.RenderTransform).X = x - mapModeDialog.GetTooltipWidth() - DialogGap; ((TranslateTransform)mapModeDialog.RenderTransform).Y = y + 2; }); FlattenButtonView flattenButtonView = ViewHelpers.FindChildrenOfType <FlattenButtonView>(m_mainWindow.MainGrid.Children).Single(); m_mapModePositionTracker = new TutorialTooltipPositionTracker(m_mainWindow, flattenButtonView); m_mapModePositionTracker.OnUpdateTransform += m_positionedMapModeDialog.DialogPosition; mapModeDialog.RenderTransformOrigin = new Point(0.0, 0.0); mapModeDialog.RenderTransform = new TranslateTransform(); TutorialTooltipView dropPinDialog = (TutorialTooltipView)GetTemplateChild(DropPinDialogName); m_positionedDropPinDialog = new PositionedDialog(dropPinDialog, (x, y, w, h) => { ((TranslateTransform)dropPinDialog.RenderTransform).X = x + w + dropPinDialog.ArrowPointHeight + DialogGap; ((TranslateTransform)dropPinDialog.RenderTransform).Y = y - (dropPinDialog.GetTooltipHeight() - h) - 2; }); MyPinCreationButtonView myPinCreationButtonView = ViewHelpers.FindChildrenOfType <MyPinCreationButtonView>(m_mainWindow.MainGrid.Children).Single(); m_dropPinPositionTracker = new TutorialTooltipPositionTracker(m_mainWindow, myPinCreationButtonView); m_dropPinPositionTracker.OnUpdateTransform += m_positionedDropPinDialog.DialogPosition; dropPinDialog.RenderTransformOrigin = new Point(0.0, 0.0); dropPinDialog.RenderTransform = new TranslateTransform(); m_showAnimation = (Storyboard)FindResource("ShowAnimation"); m_hideAnimation = ((Storyboard)FindResource("HideAnimation")).Clone(); m_hideAnimation.Completed += (o, e) => { m_hideAnimationRunning = false; Visibility = Visibility.Hidden; }; }
public override void DisplayPoiInfo(Object modelObject, bool isPinned) { ExampleApp.SearchResultModelCLI model = modelObject as ExampleApp.SearchResultModelCLI; YelpResultModel yelpResultModel = YelpResultModel.FromResultModel(model); m_closing = false; TitleText = model.Title; AddressText = model.Subtitle.Replace(", ", Environment.NewLine); PhoneText = yelpResultModel.Phone; HumanReadableCategoriesText = string.Join(Environment.NewLine, model.HumanReadableCategories); ReviewText = string.Join(Environment.NewLine, yelpResultModel.Reviews); CategoryIcon = StartupResourceLoader.GetBitmap(SearchResultCategoryMapper.GetIconImageName(model.Category)); PoiViewRatingCountText = yelpResultModel.ReviewCount.ToString(); RatingsImage = null; if (yelpResultModel.ReviewCount > 0 && !string.IsNullOrEmpty(yelpResultModel.RatingsImageUrl)) { RatingsImage = new BitmapImage(ViewHelpers.MakeUriForImage(string.Format("{0}.png", yelpResultModel.RatingsImageUrl))); } RatingCountVisibility = string.IsNullOrEmpty(yelpResultModel.ImageUrl) && !string.IsNullOrEmpty(yelpResultModel.RatingsImageUrl) && yelpResultModel.ReviewCount > 0 ? Visibility.Visible : Visibility.Collapsed; Url = yelpResultModel.WebUrl; if (string.IsNullOrEmpty(ReviewText)) { m_reviewsIcon.Visibility = Visibility.Hidden; } else { m_reviewsIcon.Visibility = Visibility.Visible; } m_poiImage.Source = new BitmapImage(new Uri("/ExampleAppWPF;component/Assets/poi_placeholder.png", UriKind.Relative)); m_isPinned = isPinned; OnPropertyChanged("IsPinned"); ShowAll(); }
public void ProcessCustomKeyboardKeys() { foreach (var customKeyLayout in this.customKeyboardLayout) { string row = customKeyLayout[0]; int index = int.Parse(customKeyLayout[1]); string lowercase = customKeyLayout[2]; string uppercase = customKeyLayout[3]; StackPanel keyboardRow = ViewHelpers.FindChildByName <StackPanel>(this, row); VirtualKeyboard.VirtualKeyboardInputButton keyToChange = keyboardRow.Children[index] as VirtualKeyboard.VirtualKeyboardInputButton; VirtualKeyboard.VirtualKeyboardInputButton.SetKeyInputValue(keyToChange, lowercase); if (lowercase != "") { VirtualKeyboard.VirtualKeyboardInputButton.SetKeyShiftInputValue(keyToChange, uppercase); } else if (VirtualKeyboard.VirtualKeyboardInputButton.GetKeyShiftInputValue(keyToChange) != null) { uppercase = lowercase; VirtualKeyboard.VirtualKeyboardInputButton.SetKeyShiftInputValue(keyToChange, uppercase); } if (keyToChange.GetAutoLabel()) { keyToChange.Content = keyToChange.GetKeyInputValue(); } else { StackPanel customKeyLabel = ViewHelpers.FindChildByName <StackPanel>(this, "Label" + customKeyLayout[1]); TextBlock upperCaseLabel = customKeyLabel.Children[0] as TextBlock; upperCaseLabel.Text = uppercase; TextBlock lowerCaseLabel = customKeyLabel.Children[1] as TextBlock; lowerCaseLabel.Text = lowercase; } } }
protected override void DisplayCustomPoiInfo(Object modelObject) { ExampleApp.SearchResultModelCLI model = modelObject as ExampleApp.SearchResultModelCLI; YelpResultModel yelpResultModel = YelpResultModel.FromResultModel(model); var mainGrid = (Application.Current.MainWindow as MainWindow).MainGrid; var screenWidth = mainGrid.ActualWidth; m_closing = false; TitleText = model.Title; AddressText = model.Subtitle.Replace(", ", "," + Environment.NewLine); PhoneText = yelpResultModel.Phone; HumanReadableCategoriesText = string.Join(Environment.NewLine, model.HumanReadableCategories); ReviewText = string.Join(Environment.NewLine, yelpResultModel.Reviews); CategoryIcon = SearchResultPoiViewIconProvider.GetIconForCategory(model.Category); PoiViewRatingCountText = yelpResultModel.ReviewCount > 0 ? yelpResultModel.ReviewCount.ToString() : string.Empty; RatingsImage = null; if (yelpResultModel.ReviewCount > 0 && !string.IsNullOrEmpty(yelpResultModel.RatingsImageUrl)) { RatingsImage = new BitmapImage(ViewHelpers.MakeUriForImage(string.Format("{0}.png", yelpResultModel.RatingsImageUrl))); } RatingCountVisibility = !string.IsNullOrEmpty(yelpResultModel.RatingsImageUrl) && yelpResultModel.ReviewCount > 0 ? Visibility.Visible : Visibility.Collapsed; Url = yelpResultModel.WebUrl; if (string.IsNullOrEmpty(ReviewText)) { m_reviewsIcon.Visibility = Visibility.Hidden; } else { m_reviewsIcon.Visibility = Visibility.Visible; } m_poiImage.Source = new BitmapImage(new Uri("/ExampleAppWPF;component/Assets/poi_placeholder.png", UriKind.Relative)); ShowAll(); }