Esempio n. 1
0
        /// <summary> Gets date prompt configuration. </summary>
        /// <exception cref="ArgumentNullException"> Thrown when one or more required arguments are null. </exception>
        /// <param name="config"> The configuration. </param>
        /// <returns> The date prompt configuration. </returns>
        private AcrDialogs.DatePromptConfig GetDatePromptConfig(UserDialogDatePromptConfig config)
        {
            if (config == null)
            {
                throw new ArgumentNullException(nameof(config));
            }

            var result = new AcrDialogs.DatePromptConfig();

            if (config.Title != null)
            {
                result.Title = config.Title;
            }
            if (config.OkText != null)
            {
                result.OkText = config.OkText;
            }
            if (config.CancelText != null)
            {
                result.CancelText = config.CancelText;
            }
            if (config.SelectedDate != null)
            {
                result.SelectedDate = config.SelectedDate;
            }
            if (config.UnspecifiedDateTimeKindReplacement != null)
            {
                result.UnspecifiedDateTimeKindReplacement = config.UnspecifiedDateTimeKindReplacement.Value;
            }
            if (config.OnAction != null)
            {
                result.OnAction = GetDatePromptResultAction(config.OnAction);
            }
            if (config.IsCancellable != null)
            {
                result.IsCancellable = config.IsCancellable.Value;
            }
            if (config.MinimumDate != null)
            {
                result.MinimumDate = config.MinimumDate;
            }
            if (config.MaximumDate != null)
            {
                result.MaximumDate = config.MaximumDate;
            }
            if (config.AndroidStyleId != null)
            {
                result.AndroidStyleId = config.AndroidStyleId;
            }

            return(result);
        }
Esempio n. 2
0
        /// <summary> Date prompt asynchronous. </summary>
        /// <param name="config"> The configuration. </param>
        /// <param name="cancelToken"> (Optional) The cancel token. </param>
        /// <returns> The asynchronous result that yields an UserDialogDatePromptResult. </returns>
        public async Task <UserDialogDatePromptResult> DatePromptAsync(UserDialogDatePromptConfig config, CancellationToken?cancelToken = null)
        {
            AcrDialogs.DatePromptResult result = await AcrDialogs.UserDialogs.Instance.DatePromptAsync(GetDatePromptConfig(config), cancelToken);

            return(ConvertDatePromptResult(result));
        }
Esempio n. 3
0
 /// <summary> Date prompt. </summary>
 /// <param name="config"> The configuration. </param>
 /// <returns> An IDisposable. </returns>
 public IDisposable DatePrompt(UserDialogDatePromptConfig config)
 {
     return(AcrDialogs.UserDialogs.Instance.DatePrompt(GetDatePromptConfig(config)));
 }