Exemplo n.º 1
0
        /// <summary>
        /// 項目追加時のバリデーションと、新規項目の作成
        /// </summary>
        /// <param name="item">作成された追加項目</param>
        /// <returns>バリデーションOKの場合true</returns>
        protected override bool ValidateAndCreateNewItem(out Uri item)
        {
            item = null;
            if (string.IsNullOrEmpty(InputValue))
            {
                SetError(nameof(InputValue), Resources.ValidationNoInput);
                return(false);
            }

            item = UriConversionService.BuildUri(InputValue);

            if (item == null)
            {
                SetError(nameof(InputValue), Resources.ValidationBadUri);
                return(false);
            }

            ClearError(nameof(InputValue));
            return(true);
        }
Exemplo n.º 2
0
        /// <summary>
        /// 項目追加時のバリデーションと、新規項目の作成
        /// </summary>
        /// <param name="item">作成された追加項目</param>
        /// <returns>バリデーションOKの場合true</returns>
        protected override bool ValidateAndCreateNewItem(out string item)
        {
            item = null;
            if (string.IsNullOrEmpty(InputValue))
            {
                SetError(nameof(InputValue), Resources.ValidationNoInput);
                return(false);
            }

            var val = UriConversionService.ExtractNicoVideoId(InputValue);

            if (val == null)
            {
                SetError(nameof(InputValue), Resources.ValidationBadNicovideoId);
                return(false);
            }

            item = val;
            ClearError(nameof(InputValue));
            return(true);
        }
Exemplo n.º 3
0
        /// <summary>
        /// 項目追加時のバリデーションと、新規項目の作成
        /// </summary>
        /// <param name="item">作成された追加項目</param>
        /// <returns>バリデーションOKの場合true</returns>
        protected override bool ValidateAndCreateNewItem(out ConfigJson.DoubleImageUrls item)
        {
            ClearError(nameof(InputValue));
            ClearError(nameof(AnotherInputValue));

            if (string.IsNullOrEmpty(InputValue))
            {
                SetError(nameof(InputValue), Resources.ValidationNoInput);
            }
            if (string.IsNullOrEmpty(AnotherInputValue))
            {
                SetError(nameof(AnotherInputValue), Resources.ValidationNoInput);
            }
            if (HasErrors)
            {
                item = null;
                return(false);
            }

            var front = UriConversionService.BuildUri(InputValue);
            var back  = UriConversionService.BuildUri(AnotherInputValue);

            if (front == null)
            {
                SetError(nameof(InputValue), Resources.ValidationBadUri);
            }
            if (back == null)
            {
                SetError(nameof(AnotherInputValue), Resources.ValidationBadUri);
            }
            if (HasErrors)
            {
                item = null;
                return(false);
            }

            item = new ConfigJson.DoubleImageUrls(front, back);
            return(true);
        }
Exemplo n.º 4
0
        /// <summary>
        /// 項目追加時のバリデーションと、新規項目の作成
        /// </summary>
        /// <param name="item">作成された追加項目</param>
        /// <returns>バリデーションOKの場合true</returns>
        protected override bool ValidateAndCreateNewItem(out int item)
        {
            item = 0;
            if (string.IsNullOrEmpty(InputValue))
            {
                SetError(nameof(InputValue), Resources.ValidationNoInput);
                return(false);
            }

            var val = UriConversionService.ExtractNico3dId(InputValue);

            if (val is int wk)
            {
                item = wk;
                ClearError(nameof(InputValue));
                return(true);
            }
            else
            {
                SetError(nameof(InputValue), Resources.ValidationBadNico3dId);
                return(false);
            }
        }
Exemplo n.º 5
0
        /// <summary>
        /// 選択項目のブラウズ
        /// </summary>
        /// <param name="item">選択項目</param>
        public override void BrowsItem(int item)
        {
            var url = UriConversionService.BuildNico3dUrl(item);

            ExecutionService.RunBrowser(url);
        }
Exemplo n.º 6
0
        /// <summary>
        /// 選択項目のブラウズ
        /// </summary>
        /// <param name="item">選択項目</param>
        public override void BrowsItem(string item)
        {
            var url = UriConversionService.BuildNicoViedoUrl(item);

            ExecutionService.RunBrowser(url);
        }