public override void Confirm(ConfirmConfig config)
 {
     var dlg = UIAlertController.Create(config.Title ?? String.Empty, config.Message, UIAlertControllerStyle.Alert);
     dlg.AddAction(UIAlertAction.Create(config.OkText, UIAlertActionStyle.Default, x => config.OnConfirm(true)));
     dlg.AddAction(UIAlertAction.Create(config.CancelText, UIAlertActionStyle.Default, x => config.OnConfirm(false)));
     this.Present(dlg);
 }
 public override void Confirm(ConfirmConfig config) {
     Device.BeginInvokeOnMainThread(() => {
         var dlg = new UIAlertView(config.Title ?? String.Empty, config.Message, null, config.CancelText, config.OkText);
         dlg.Clicked += (s, e) => {
             var ok = (dlg.CancelButtonIndex != e.ButtonIndex);
             config.OnConfirm(ok);
         };
         dlg.Show();
     });
 }
示例#3
0
    /// <summary>
    ///     Display a confirm dialog.
    /// </summary>
    /// <param name="config">The dialog configuration.</param>
    public virtual IDisposable Confirm(ConfirmConfig config)
    {
        // If available, call the delegate to see if presenting this dialog is allowed.
        if (MessagingServiceCore.Delegate == null || MessagingServiceCore.Delegate.OnConfirmRequested(config))
        {
            return(PresentConfirm(config));
        }

        return(null);
    }
 public override void Confirm(ConfirmConfig config) {
     var confirm = new CustomMessageBox {
         Caption = config.Title,
         Message = config.Message,
         LeftButtonContent = config.OkText,
         RightButtonContent = config.CancelText
     };
     confirm.Dismissed += (sender, args) => config.OnConfirm(args.Result == CustomMessageBoxResult.LeftButton);
     this.Dispatch(confirm.Show);
 }
 public override void Confirm(ConfirmConfig config) {
     this.Dispatch(() =>  {
         var dlg = new UIAlertView(config.Title ?? String.Empty, config.Message, null, config.CancelText, config.OkText);
         dlg.Clicked += (s, e) => {
             var ok = (dlg.CancelButtonIndex != e.ButtonIndex);
             config.OnConfirm(ok);
         };
         dlg.Show();
     });
 }
示例#6
0
        private async Task ExecuteDeleteHomeWorkCommand(StudentHomeWorkRealm homework)
        {
            HomeWorkStudentDetailViewModel studentDetailViewModel = this;

            if (!studentDetailViewModel.HasInternetConnection)
            {
                // ISSUE: reference to a compiler-generated method
                ((MvxMainThreadDispatchingObject)studentDetailViewModel).InvokeOnMainThread(new Action(studentDetailViewModel.\u003CExecuteDeleteHomeWorkCommand\u003Eb__32_0), true);
            }
            else
            {
                string        text1          = studentDetailViewModel._textProvider.GetText((string)null, (string)null, "Common_Delete_Message");
                string        text2          = studentDetailViewModel._textProvider.GetText((string)null, (string)null, "Common_Delete_Title");
                string        text3          = studentDetailViewModel._textProvider.GetText((string)null, (string)null, "Common_Delete_Confirm");
                string        text4          = studentDetailViewModel._textProvider.GetText((string)null, (string)null, "Common_Delete_Cancel");
                ConfirmConfig confirmConfig1 = new ConfirmConfig();
                confirmConfig1.set_Message(text1);
                confirmConfig1.set_Title(text2);
                confirmConfig1.set_OkText(text3);
                confirmConfig1.set_CancelText(text4);
                ConfirmConfig confirmConfig2 = confirmConfig1;
                if (studentDetailViewModel._platformStyleProvider != null)
                {
                    confirmConfig2.set_AndroidStyleId(new int?(studentDetailViewModel._platformStyleProvider.DeleteConfirmationStyle));
                }
                if (!await studentDetailViewModel._userDialogs.ConfirmAsync(confirmConfig2, new CancellationToken?()))
                {
                    return;
                }
                try
                {
                    studentDetailViewModel.IsHomeWorkLoading = true;
                    await studentDetailViewModel._studentHomeWorkDataService.DeleteStudentHomeWorkAsync(studentDetailViewModel.ActiveProfileRealm, int.Parse(homework.Id));

                    StudentHomeWorkRealm studentHomeWorkRealm = await studentDetailViewModel._studentHomeWorkDataService.FetchStudentHomeworkAsync(studentDetailViewModel.ActiveProfileRealm, int.Parse(homework.Id));

                    await studentDetailViewModel.InitStudentHomeWorks(studentDetailViewModel.Lesson);
                }
                catch (Exception ex)
                {
                    if (ex is ServerValidationException validationException)
                    {
                        await studentDetailViewModel._userDialogs.AlertAsync(validationException.ValidationException.GetAggregatedValidationMessage(), validationException.ValidationException.Message, studentDetailViewModel._textProvider.GetText((string)null, (string)null, "Alert_ButtonOk_Text"), new CancellationToken?());
                    }
                    else
                    {
                        ErrorHandler.Current.HandleError(ex);
                    }
                }
                finally
                {
                    studentDetailViewModel.IsHomeWorkLoading = false;
                }
            }
        }
 public override void Confirm(ConfirmConfig config)
 {
     this.Dispatch(() => {
         var dlg      = new UIAlertView(config.Title ?? String.Empty, config.Message, null, config.CancelText, config.OkText);
         dlg.Clicked += (s, e) => {
             var ok = (dlg.CancelButtonIndex != e.ButtonIndex);
             config.OnConfirm(ok);
         };
         dlg.Show();
     });
 }
示例#8
0
        public Task <bool> ShowConfirmationAsync(string message, string title)
        {
            ConfirmConfig config = new ConfirmConfig();

            config.Title      = title;
            config.Message    = message;
            config.CancelText = Container.SGApp.GetLocalizedText(LanguageToken.GENERAL_No, "No");
            config.OkText     = Container.SGApp.GetLocalizedText(LanguageToken.GENERAL_Yes, "Yes");

            return(UserDialogs.Instance.ConfirmAsync(config));
        }
 public override void Confirm(ConfirmConfig config) {
     Utils.RequestMainThread(() => 
         new AlertDialog
             .Builder(Utils.GetActivityContext())
             .SetMessage(config.Message)
             .SetTitle(config.Title)
             .SetPositiveButton(config.OkText, (o, e) => config.OnConfirm(true))
             .SetNegativeButton(config.CancelText, (o, e) => config.OnConfirm(false))
             .Show()
     );
 }
示例#10
0
        public async Task <bool> ConfirmLogoutAsync()
        {
            var config = new ConfirmConfig()
            {
                Message    = "Are you sure you want to logout?",
                OkText     = "Yes",
                CancelText = "No"
            };

            return(await UserDialogs.Instance.ConfirmAsync(config));
        }
示例#11
0
        public static ConfirmConfig GetConfirmConfig(string title, string message, string confirmText, string cancelText)
        {
            var confirmConfig = new ConfirmConfig();

            confirmConfig.Title      = title;
            confirmConfig.Message    = message;
            confirmConfig.OkText     = confirmText;
            confirmConfig.CancelText = cancelText;

            return(confirmConfig);
        }
 public override void Confirm(ConfirmConfig config)
 {
     Device.BeginInvokeOnMainThread(() => {
         var dlg      = new UIAlertView(config.Title ?? String.Empty, config.Message, null, config.CancelText, config.OkText);
         dlg.Clicked += (s, e) => {
             var ok = (dlg.CancelButtonIndex != e.ButtonIndex);
             config.OnConfirm(ok);
         };
         dlg.Show();
     });
 }
示例#13
0
 public void Show(ConfirmConfig config)
 {
     _userDialogsInstance.Confirm(new Acr.UserDialogs.ConfirmConfig
     {
         CancelText = config.CancelText,
         OkText     = config.OkText,
         Title      = config.Title,
         Message    = config.Message,
         OnAction   = config.OnAction
     });
 }
示例#14
0
        public Task <bool> ShowConfirmAsync(string message, string title)
        {
            ConfirmConfig config = new ConfirmConfig();

            config.UseYesNo();
            config.Message    = message;
            config.Title      = title;
            config.OkText     = "Ja";
            config.CancelText = "Nein";
            return(UserDialogs.Instance.ConfirmAsync(config));
        }
示例#15
0
        public void DeletePlaylist(Playlist pl)
        {
            this.plidToDelete = pl.Id;
            var           userDialogs = Mvx.Resolve <IUserDialogs>();
            ConfirmConfig cc          = new ConfirmConfig();

            cc.CancelText = "Cancel";
            cc.OkText     = "Ok";
            cc.Message    = Texts.SureDelete;
            cc.OnConfirm  = OnConfirm;
            userDialogs.Confirm(cc);
        }
示例#16
0
        public override void Confirm(ConfirmConfig config)
        {
            var confirm = new CustomMessageBox {
                Caption            = config.Title,
                Message            = config.Message,
                LeftButtonContent  = config.OkText,
                RightButtonContent = config.CancelText
            };

            confirm.Dismissed += (sender, args) => config.OnConfirm(args.Result == CustomMessageBoxResult.LeftButton);
            this.Dispatch(confirm.Show);
        }
示例#17
0
        public async void DownloadAll()
        {
            var           userDialogs = Mvx.Resolve <IUserDialogs>();
            ConfirmConfig cc          = new ConfirmConfig();

            cc.Message    = string.Format(Texts.DownloadAllConfirm, this.songs.Count);
            cc.CancelText = Texts.ButtonCancel;
            cc.OkText     = "Ok";
            cc.Title      = "Download All";
            cc.OnConfirm  = this.OnConfirm;
            userDialogs.Confirm(cc);
        }
示例#18
0
        /// <summary>
        /// boolean method that return whatever user select ok or cancel with option to change ok and cancel labels
        /// </summary>
        /// <param name="message"></param>
        /// <param name="title"></param>
        /// <param name="cancelText"></param>
        /// <param name="okText"></param>
        /// <returns></returns>
        public Task <bool> ShowConfirmMessageAsync(string message, string title = "Confirm", string cancelText = "Cancel", string okText = "Ok")
        {
            var confirmConfig = new ConfirmConfig()
            {
                Message    = message,
                Title      = title,
                CancelText = cancelText,
                OkText     = okText,
            };

            return(UserDialogs.Instance.ConfirmAsync(confirmConfig));
        }
        /// <summary>
        /// Displays a generic confirmation dialog.
        /// </summary>
        /// <returns>The user response, where <see langword="true"/> is a positive" response.</returns>
        /// <param name="title">Title.</param>
        /// <param name="message">Message.</param>
        /// <param name="confirmButtonText">Confirmation button text.</param>
        /// <param name="denyButtonText">Deny button text.</param>
        public static Task <bool> ConfirmationDialogAsync(string title, string message, string confirmButtonText, string denyButtonText)
        {
            ConfirmConfig confirmConfig = new ConfirmConfig()
            {
                Title      = title,
                Message    = message,
                OkText     = confirmButtonText,
                CancelText = denyButtonText
            };

            return(UserDialogs.Instance.ConfirmAsync(confirmConfig));
        }
示例#20
0
 public override void Confirm(ConfirmConfig config)
 {
     Utils.RequestMainThread(() =>
                             new AlertDialog
                             .Builder(Utils.GetActivityContext())
                             .SetMessage(config.Message)
                             .SetTitle(config.Title)
                             .SetPositiveButton(config.OkText, (o, e) => config.OnConfirm(true))
                             .SetNegativeButton(config.CancelText, (o, e) => config.OnConfirm(false))
                             .Show()
                             );
 }
示例#21
0
        public async Task <bool> Confirm(string msg)
        {
            var c = new ConfirmConfig
            {
                Title      = Title,
                Message    = msg,
                OkText     = "Aceptar",
                CancelText = "Cancelar"
            };

            return(await UserDialogs.Instance.ConfirmAsync(c));
        }
示例#22
0
        public async Task <bool> AskConfirmation(string message)
        {
            var config = new ConfirmConfig()
            {
                Title      = "Confirmation",
                Message    = message,
                OkText     = "Yes",
                CancelText = "No",
            };

            return(await UserDialogs.Instance.ConfirmAsync(config));
        }
示例#23
0
        /// <summary>
        /// Muestra un mensaje de tipo alert para confirmar una acción.
        /// </summary>
        /// <param name="message">Mensaje a mostrar</param>
        /// <param name="title">Título</param>
        /// <param name="btnOkText">Texto del botón aceptar</param>
        /// <param name="btnCancelText">Texto del botón cancelar</param>
        /// <returns>True si ha pulsado Aceptar, False si ha pulsado Cancelar.</returns>
        public static async Task <bool> ShowConfirmAsync(string message, string title, string btnCancelText, string btnOkText)
        {
            ConfirmConfig config = new ConfirmConfig
            {
                Message    = message,
                Title      = title,
                CancelText = btnCancelText,
                OkText     = btnOkText
            };

            return(await UserDialogs.Instance.ConfirmAsync(config));
        }
示例#24
0
        private void ConfirmAction()
        {
            var config = new ConfirmConfig();

            config.Message        = "Are you sure?";
            config.AndroidStyleId = 0;
            config.Title          = "Delete all bookmarks";
            config.OnAction       = (x) => {};
            config.UseYesNo();
            var dialog = DependencyService.Get <ICustomUserDialog>();

            dialog.Confirm(config);
        }
示例#25
0
        public static void ShowRating(Action <bool> gotoRating)
        {
            ConfirmConfig confirm = new ConfirmConfig()
            {
                Message    = "Time to rate the app! We'll calculate the score based on your smile.",
                OkText     = "LET'S DO IT!",
                OnAction   = gotoRating,
                CancelText = "CANCEL",
                Title      = "Rate the app"
            };

            UserDialogs.Instance.Confirm(confirm);
        }
示例#26
0
        public IDisposable ConfirmDialog(string title, string message, string okText, string cancelText, Action <bool> action)
        {
            ConfirmConfig config = new ConfirmConfig()
            {
                Title      = title,
                Message    = message,
                OkText     = okText,
                CancelText = cancelText,
                OnAction   = action
            };

            return(this.UserDialogs.Confirm(config));
        }
示例#27
0
        private async void ExecuteDelete()
        {
            var config = new ConfirmConfig();

            config.Title   = "確認";
            config.Message = "削除してよろしいでしょうか。";
            var result = await _dialog.ConfirmAsync(config, null);

            if (result)
            {
                _service.DeleteTask(ID);
                Close(this);
            }
        }
示例#28
0
        public async Task ShowConfirmOrCancelDialog(string title, string message, string confirmButtonText, string cancelButtonText, Action confirmAction)
        {
            var config = new ConfirmConfig()
            {
                Title = title, Message = message, OkText = confirmButtonText, CancelText = cancelButtonText
            };

            var result = await UserDialogs.Instance.ConfirmAsync(config);

            if (result)
            {
                confirmAction.Invoke();
            }
        }
        private async Task <bool> CheckRemoveRecipient()
        {
            var res = true;

            if (donation.Recipient != null)
            {
                var confirmConfig = new ConfirmConfig();
                confirmConfig.CancelText = "Cancel";
                confirmConfig.OkText     = "Relist anyway";
                confirmConfig.Message    = "This donation has been accepted. If you relist the recipient will be removed.";
                confirmConfig.Title      = "Warning";
                res = await UserDialogs.Instance.ConfirmAsync(confirmConfig);
            }
            return(res);
        }
示例#30
0
 public async Task ConfirmAsync(
     string title,
     string message,
     Action <bool> action)
 {
     ConfirmConfig dialogSettings = new ConfirmConfig()
     {
         CancelText = AppResources.App_Cancel,
         Message    = message,
         OkText     = AppResources.App_Ok,
         Title      = title,
         OnAction   = action
     };
     await UserDialogs.Instance.ConfirmAsync(dialogSettings);
 }
        public async Task HandleConfirmation()
        {
            Debug.WriteLine("Handling Call from ViewModel");
            var config = new ConfirmConfig()
            {
                Title      = "Confirmation",
                Message    = "Would you like to perform the operation?",
                OkText     = "Yes",
                CancelText = "No",
            };

            if (await UserDialogs.Instance.ConfirmAsync(config))
            {
                Vm.DoSomething();
            }
        }
示例#32
0
        public async Task <bool> ConfirmLogoutAsync()
        {
            var config = new ConfirmConfig
            {
                Message = "サインアウトしますか?",
                OkText  = "サインアウト",
            };
            var ok = await UserDialogs.Instance.ConfirmAsync(config);

            if (ok)
            {
                Settings.LoginUser = null;
            }

            return(ok);
        }
示例#33
0
        public static async Task <bool> WaitUserReconnect()
        {
            if (task != null)
            {
                await task;
                return(true);
            }
            var config = new ConfirmConfig()
                         .SetMessage("No internet connection").SetOkText("Reconnect");

            task = UserDialogs.Instance.ConfirmAsync(config);
            await task;

            task = null;
            return(true);
        }
示例#34
0
 public async void HandleConfirmation(BuySellViewModel sender)
 {
     if (vm.SelectedCrypto.PriceUsd != null)
     {
         var config = new ConfirmConfig()
         {
             Title      = "Revendre?",
             Message    = "Voulez vous revendre du " + vm.SelectedCrypto.Name + "qui vaut " + vm.SelectedCrypto.PriceUsd + "$ ?",
             OkText     = "Oui",
             CancelText = "Non",
         };
         if (await UserDialogs.Instance.ConfirmAsync(config))
         {
             vm.DoSomething();
             vm.RefreshData();
         }
     }
 }
示例#35
0
        /// <summary>
        /// Navigate to delivery
        /// </summary>
        /// <param name="adapterPosition">Adapter position.</param>
        void NavigateToDelivery(int adapterPosition)
        {
            _call = _calls[adapterPosition];

            if (_call.OnStop.GetValueOrDefault())
            {
                var config = new ConfirmConfig
                {
                    Message  = Activity.Resources.GetString(Resource.String.message_on_stop),
                    OnAction = OnConfirmOnStopDelivery
                };

                UserDialogs.Instance.Confirm(config);
                return;
            }

            StartDelivery(_call);
        }