private async void buttonUpdatePassword_Click(object sender, EventArgs e)
        {
            var request = new ChangeUserPasswordRequest(this.textboxPassword.Text);
            var resp    = await SocketManager.Instance.SendRequest <ChangeUserPasswordResponse>(request);

            string mainInstruction      = null;
            string text                 = null;
            TaskDialogStandardIcon icon = TaskDialogStandardIcon.None;

            if (resp.isSuccessful)
            {
                mainInstruction = "Your account password has been changed";
                icon            = TaskDialogStandardIcon.Information;
            }
            else
            {
                mainInstruction = "Your account password could not be changed";
                text            = "Please try again later.";
                icon            = TaskDialogStandardIcon.Error;
            }

            using (var dialog = new TaskDialog()
            {
                Caption = "Change Password",
                InstructionText = mainInstruction,
                Text = text,
                Icon = icon
            })
            {
                dialog.Show();
            }
        }
        // CORE SHOW METHODS:
        // All static Show() calls forward here -
        // it is responsible for retrieving
        // or creating our cached TaskDialog instance, getting it configured,
        // and in turn calling the appropriate instance Show.

        private static TaskDialogResult ShowCoreStatic(
            string text,
            string instructionText,
            string caption, TaskDialogStandardIcon icon, IntPtr hwnd)
        {
            CoreHelpers.ThrowIfNotVista();

            // If no instance cached yet, create it.
            if (staticDialog == null)
            {
                // New TaskDialog will automatically pick up defaults when
                // a new config structure is created as part of ShowCore().
                staticDialog = new TaskDialog();
            }

            // Set the few relevant properties,
            // and go with the defaults for the others.
            staticDialog.text              = text;
            staticDialog.instructionText   = instructionText;
            staticDialog.caption           = caption;
            staticDialog.Icon              = icon;
            staticDialog.OwnerWindowHandle = hwnd;

            return(staticDialog.Show());
        }
        public TaskDialogBuilder AddFooter(string text, TaskDialogStandardIcon icon)
        {
            CheckDialogInstance();

            dialog.FooterIcon = icon;
            dialog.FooterText = text;
            return(this);
        }
Example #4
0
 public TaskDialogBuilder Initialize(string caption, string text, TaskDialogStandardIcon icon, string instructionText = null)
 {
     Dialog.Caption         = caption;
     Dialog.Text            = text;
     Dialog.Icon            = icon;
     Dialog.InstructionText = instructionText;
     return(this);
 }
Example #5
0
 public static void Show(Window window, string text, TaskDialogStandardIcon icon = TaskDialogStandardIcon.None, bool cancelable = false)
 {
     using (TaskDialog task = new TaskDialog(window))
     {
         task.Dialog.Caption    = App.ProgramName;
         task.Dialog.Text       = text;
         task.Dialog.Icon       = icon;
         task.Dialog.Cancelable = cancelable;
         task.Show();
     }
 }
 public TaskDialogBuilder Initialize(string caption, string text, TaskDialogStandardIcon icon, string instructionText = null)
 {
     dialog = new TaskDialog
     {
         Caption         = caption,
         Text            = text,
         Icon            = icon,
         InstructionText = instructionText,
         Cancelable      = false
     };
     return(this);
 }
 private void UpdateIconCore(TaskDialogStandardIcon icon, TaskDialogNativeMethods.TASKDIALOG_ICON_ELEMENT element)
 {
     AssertCurrentlyShowing();
     SendMessageHelper(
         TaskDialogNativeMethods.TASKDIALOG_MESSAGES.TDM_UPDATE_ICON,
         (int)element,
         (long)icon);
 }
 internal void UpdateMainIcon(TaskDialogStandardIcon mainIcon)
 {
     UpdateIconCore(mainIcon, TaskDialogNativeMethods.TASKDIALOG_ICON_ELEMENT.TDIE_ICON_MAIN);
 }
 internal void UpdateFooterIcon(TaskDialogStandardIcon footerIcon)
 {
     UpdateIconCore(footerIcon, TaskDialogNativeMethods.TASKDIALOG_ICON_ELEMENT.TDIE_ICON_FOOTER);
 }
Example #10
0
        /// <summary>Shows either a <c>TaskDialog</c> or a <c>System.Windows.MessageBox</c> if running legacy windows.</summary>
        /// <param name="instructionText">The main text to display (Blue 14pt for <c>TaskDialog</c>).</param>
        /// <param name="icon">The icon to use.</param>
        /// <param name="standardButtons">The standard buttons to use (with or without the custom default button text).</param>
        /// <param name="description">A description of the message, supplements the instruction text.</param>
        /// <param name="footerText">Text to display as a footer message.</param>
        /// <param name="defaultButtonText">Text to display on the button.</param>
        /// <param name="displayShieldOnButton">Indicates if a UAC shield is to be displayed on the defaultButton.</param>
        static void ShowMessage(
            string instructionText, 
            TaskDialogStandardIcon icon, 
            TaskDialogStandardButtons standardButtons, 
            string description = null, 
            string footerText = null, 
            string defaultButtonText = null, 
            bool displayShieldOnButton = false)
        {
            if (TaskDialog.IsPlatformSupported)
            {
                using (var td = new TaskDialog())
                {
                    td.Caption = Resources.SevenUpdateSDK;
                    td.InstructionText = instructionText;
                    td.Text = description;
                    td.Icon = icon;
                    td.FooterText = footerText;
                    td.FooterIcon = TaskDialogStandardIcon.Information;
                    td.CanCancel = true;
                    td.StandardButtons = standardButtons;

                    if (defaultButtonText != null)
                    {
                        var button = new TaskDialogButton(@"btnCustom", defaultButtonText)
                            {
                               Default = true, ShowElevationIcon = displayShieldOnButton
                            };
                        td.Controls.Add(button);
                    }

                    td.ShowDialog(Application.Current.MainWindow);
                    return;
                }
            }

            string message = instructionText;
            var msgIcon = MessageBoxImage.None;

            if (description != null)
            {
                message += Environment.NewLine + description;
            }

            if (footerText != null)
            {
                message += Environment.NewLine + footerText;
            }

            switch (icon)
            {
                case TaskDialogStandardIcon.Error:
                    msgIcon = MessageBoxImage.Error;
                    break;
                case TaskDialogStandardIcon.Information:
                    msgIcon = MessageBoxImage.Information;
                    break;
                case TaskDialogStandardIcon.Warning:
                    msgIcon = MessageBoxImage.Warning;
                    break;
            }

            MessageBoxResult result;

            if (standardButtons == TaskDialogStandardButtons.Cancel || defaultButtonText != null)
            {
                result = MessageBox.Show(message, Resources.SevenUpdateSDK, MessageBoxButton.OKCancel, msgIcon);
            }
            else
            {
                result = MessageBox.Show(message, Resources.SevenUpdateSDK, MessageBoxButton.OK, msgIcon);
            }

            switch (result)
            {
                case MessageBoxResult.No:
                    return;
                case MessageBoxResult.OK:
                    return;
                case MessageBoxResult.Yes:
                    return;
                default:
                    return;
            }
        }
Example #11
0
 /// <summary>Shows either a <c>TaskDialog</c> or a <c>System.Windows.MessageBox</c> if running legacy windows.</summary>
 /// <param name="instructionText">The main text to display (Blue 14pt for <c>TaskDialog</c>).</param>
 /// <param name="icon">The <c>TaskDialogStandardIcon</c> to display.</param>
 /// <param name="description">A description of the message, supplements the instruction text.</param>
 internal static void ShowMessage(string instructionText, TaskDialogStandardIcon icon, string description = null)
 {
     ShowMessage(instructionText, icon, TaskDialogStandardButtons.Ok, description);
 }
 internal void UpdateFooterIcon(TaskDialogStandardIcon footerIcon)
 {
     UpdateIconCore(footerIcon, TaskDialogNativeMethods.TaskDialogIconElement.Footer);
 }
Example #13
0
        public static bool?ShowWithCheckBox(Window window, string text, string instructionText, string checkBoxText, TaskDialogStandardIcon icon = TaskDialogStandardIcon.None, bool?isChecked = null, bool cancelable = false)
        {
            bool?result;

            using (TaskDialog task = new TaskDialog(window))
            {
                task.Dialog.Text                  = text;
                task.Dialog.InstructionText       = instructionText;
                task.Dialog.FooterCheckBoxChecked = isChecked;
                task.Dialog.FooterCheckBoxText    = checkBoxText;
                task.Dialog.Icon                  = icon;
                task.Dialog.Cancelable            = cancelable;

                task.Show();
                result = task.Dialog.FooterCheckBoxChecked;
            }
            return(result);
        }
 /// <summary>
 /// TaskDialogを生成します
 /// </summary>
 /// <param name="caption">タイトルバーに表示されるキャプション</param>
 /// <param name="instructionText">指示テキスト</param>
 /// <param name="text">本文</param>
 /// <param name="icon">アイコン</param>
 /// <returns>TaskDialog</returns>
 private TaskDialog Dialog(string caption, string instructionText, string text, TaskDialogStandardIcon icon)
 {
     var dialog = new TaskDialog
     {
         Caption = caption,
         InstructionText = instructionText,
         Text = text,
         Icon = icon,
         StandardButtons = TaskDialogStandardButtons.Ok
     };
     return dialog;
 }
Example #15
0
 private void UpdateMainIcon( TaskDialogStandardIcon icon )
 {
     TaskDialogIconElement element = TaskDialogIconElement.Main;
     SendMessageHelper( TaskDialogMessage.UpdateIcon, (int) element, (long) icon );
 }
 internal void UpdateMainIcon(TaskDialogStandardIcon mainIcon)
 {
     UpdateIconCore(mainIcon, TaskDialogNativeMethods.TaskDialogIconElement.Main);
 }
Example #17
0
 /// <summary>
 /// Show error dialog.
 /// </summary>
 /// <param name="windowTitleText">Title that appears in the title bar of the popup window.</param>
 /// <param name="title">Title that appears inside the popup window.</param>
 /// <param name="message">Detailed messages appearing in the popup window.</param>
 /// <param name="stackTrace">Stack trace.</param>
 /// <param name="buttons">Buttons to display.</param>
 /// <param name="icon">Icon to display.</param>
 /// <returns><code>TaskDialogResult</code> object indicating which option user selected.</returns>
 public static TaskDialogResult ShowErrorDialog(string windowTitleText, string title, string message, string stackTrace, TaskDialogStandardButtons buttons = TaskDialogStandardButtons.Ok, TaskDialogStandardIcon icon = TaskDialogStandardIcon.Error)
 {
     return(ShowDialog(windowTitleText, title, message, buttons, icon, stackTrace));
 }
 private void UpdateIconCore(TaskDialogStandardIcon icon, TaskDialogNativeMethods.TaskDialogIconElement element)
 {
     AssertCurrentlyShowing();
     SendMessageHelper(
         TaskDialogNativeMethods.TaskDialogMessages.UpdateIcon,
         (int)element,
         (long)icon);
 }
Example #19
0
 /// <summary>
 /// Show generic user dialog with don't show this again option.
 /// </summary>
 /// <param name="windowTitleText">Title that appears in the title bar of the popup window.</param>
 /// <param name="title">Title that appears inside the popup window.</param>
 /// <param name="message">Detailed messages appearing in the popup window.</param>
 /// <param name="dontShowAgain">Boolean value indicating whether user selected don't sow this again.</param>
 /// <param name="buttons">Buttons to display.</param>
 /// <param name="icon">Icon to display.</param>
 /// <returns><code>TaskDialogResult</code> object indicating which option user selected.</returns>
 public static TaskDialogResult ShowDialogWithDontShowAgain(string windowTitleText, string title, string message, out bool dontShowAgain, TaskDialogStandardButtons buttons = TaskDialogStandardButtons.Ok, TaskDialogStandardIcon icon = TaskDialogStandardIcon.Information)
 {
     if (TaskDialog.IsPlatformSupported)
     {
         var taskdlg = new TaskDialog();
         var button  = buttons;
         taskdlg.Icon                  = icon;
         taskdlg.Caption               = windowTitleText;
         taskdlg.InstructionText       = title;
         taskdlg.Text                  = message;
         taskdlg.StandardButtons       = button;
         taskdlg.FooterCheckBoxChecked = false;
         taskdlg.FooterCheckBoxText    = string.Format("Don't show this for remaining items");
         var result = taskdlg.Show();
         dontShowAgain = taskdlg.FooterCheckBoxChecked.GetValueOrDefault(false);
         return(result);
     }
     else
     {
         dontShowAgain = false;
         var result = MessageBox.Show(message, windowTitleText, GetMessageBoxButtons(buttons),
                                      GetMessageBoxIcons(icon));
         return(GetTaskDialogResult(result));
     }
 }