void ShowDialog(Window parent, MessageIcon icon, string title, string content, MessageChoice choices, string help, bool enableDontAsk, MessageChoice defaultChoice)
{
if (IsSet(choices, MessageChoice.Yes | MessageChoice.OK) || (choices == MessageChoice.Help))
{
throw new ArgumentException();
}
view = CreateWindow(parent);
Icon = icon;
Title = title;
Content = content;
Choices = new List <ICommand>();
EnableDontAskAgain = enableDontAsk;
Result = MessageChoice.None;
if (!string.IsNullOrEmpty(help))
{
HelpMessage = help;
}
if (IsSet(choices, MessageChoice.Yes))
{
Choices.Add(new ChoiceCommand(CloseCommand, defaultChoice == MessageChoice.Yes, false, "Yes", MessageChoice.Yes));
}
if (IsSet(choices, MessageChoice.No))
{
Choices.Add(new ChoiceCommand(CloseCommand, defaultChoice == MessageChoice.No, !IsSet(choices, MessageChoice.Cancel), "No", MessageChoice.No));
}
if (IsSet(choices, MessageChoice.OK))
{
Choices.Add(new ChoiceCommand(CloseCommand, choices == MessageChoice.OK || defaultChoice == MessageChoice.OK, !IsSet(choices, MessageChoice.Cancel), "OK", MessageChoice.OK));
}
if (IsSet(choices, MessageChoice.Cancel))
{
Choices.Add(new ChoiceCommand(CloseCommand, choices == MessageChoice.Cancel || defaultChoice == MessageChoice.Cancel, true, "Cancel", MessageChoice.Cancel));
}
if (IsSet(choices, MessageChoice.Help))
{
Choices.Add(new ChoiceCommand(HelpCommand, choices == MessageChoice.Help || defaultChoice == MessageChoice.Help, false, "Help", MessageChoice.Help));
}
view.ShowDialog();
}