예제 #1
0
        protected override bool TryGetHohoemaPin(out HohoemaPin pin)
        {
            var    genreName = RankingGenre.ToCulturelizeString();
            var    tag       = SelectedRankingTag.Value?.Tag;
            var    pickedTag = PickedTags.FirstOrDefault(x => x.Tag == tag);
            string parameter = null;

            if (string.IsNullOrEmpty(pickedTag?.Tag) || pickedTag.Tag == "all")
            {
                pickedTag = null;
                parameter = $"genre={RankingGenre}";
            }
            else
            {
                parameter = $"genre={RankingGenre}&tag={Uri.EscapeDataString(SelectedRankingTag.Value.Tag)}";
            }
            pin = new HohoemaPin()
            {
                Label     = pickedTag != null ? $"{pickedTag.DisplayName} - {genreName}" : $"{genreName}",
                PageType  = HohoemaPageType.RankingCategory,
                Parameter = parameter
            };

            return(true);
        }
        internal void AddPin(HohoemaPin pin)
        {
            Items.Add(new PinMenuItemViewModel(pin, this));
            SavePinsSortIndex();

            _notificationService.ShowLiteInAppNotification_Success("PinAddedWithTitle".Translate(pin.Label));
        }
예제 #3
0
 // call from PrimaryWindowsCoreLayout.xaml.cs
 public void AddPin(HohoemaPin pin)
 {
     if (pin != null)
     {
         PinSettings.Pins.Add(pin);
     }
 }
 public PinItemViewModel(
     HohoemaPin pin,
     DialogService dialogService,
     PinSettings pinSettings
     )
 {
     Pin           = pin;
     DialogService = dialogService;
     PinSettings   = pinSettings;
 }
예제 #5
0
        protected override bool TryGetHohoemaPin(out HohoemaPin pin)
        {
            pin = new HohoemaPin()
            {
                Label     = UserName,
                PageType  = HohoemaPageType.UserVideo,
                Parameter = $"id={UserId}"
            };

            return(true);
        }
예제 #6
0
        protected override bool TryGetHohoemaPin(out HohoemaPin pin)
        {
            pin = new HohoemaPin()
            {
                Label     = SearchOption.Keyword,
                PageType  = HohoemaPageType.SearchResultTag,
                Parameter = $"keyword={System.Net.WebUtility.UrlEncode(SearchOption.Keyword)}&target={SearchOption.SearchTarget}"
            };

            return(true);
        }
예제 #7
0
        protected override bool TryGetHohoemaPin(out HohoemaPin pin)
        {
            pin = new HohoemaPin()
            {
                Label     = CommunityName,
                PageType  = HohoemaPageType.CommunityVideo,
                Parameter = $"id={CommunityId}"
            };

            return(true);
        }
예제 #8
0
        protected override bool TryGetHohoemaPin(out HohoemaPin pin)
        {
            pin = new HohoemaPin()
            {
                Label     = VideoTitle,
                PageType  = HohoemaPageType.VideoInfomation,
                Parameter = $"id={VideoId}"
            };

            return(true);
        }
예제 #9
0
        protected override bool TryGetHohoemaPin(out HohoemaPin pin)
        {
            pin = new HohoemaPin()
            {
                Label     = ChannelName,
                PageType  = HohoemaPageType.ChannelVideo,
                Parameter = $"id={ChannelId}"
            };

            return(true);
        }
예제 #10
0
        protected override bool TryGetHohoemaPin(out HohoemaPin pin)
        {
            pin = new HohoemaPin()
            {
                Label     = MylistTitle,
                PageType  = HohoemaPageType.Mylist,
                Parameter = $"id={Mylist.Value.Id}&origin={Mylist.Value.ToMylistOrigin()}"
            };

            return(true);
        }
        public PinMenuItemViewModel(HohoemaPin pin, PinsMenuSubItemViewModel parentVM)
            : base(pin.Label, pin.PageType, new NavigationParameters(pin.Parameter))
        {
            Pin       = pin;
            _parentVM = parentVM;

            if (Pin.PageType == HohoemaPageType.Search)
            {
                var service = Parameter.GetValue <string>("service");
                if (Enum.TryParse <SearchTarget>(service, out var searchTarget))
                {
                    Description = $"{searchTarget.Translate()} {HohoemaPageType.Search.Translate()}";
                }
                else
                {
                    Description = HohoemaPageType.Search.Translate();
                }
            }
            else
            {
                Description = Pin.PageType.Translate();
            }
        }
예제 #12
0
 protected override bool TryGetHohoemaPin(out HohoemaPin pin)
 {
     pin = null;
     return(false);
 }
예제 #13
0
 protected abstract bool TryGetHohoemaPin(out HohoemaPin pin);
 public void AddPin(HohoemaPin pin)
 {
     _pinsMenuSubItemViewModel.AddPin(pin);
 }