//\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
//
// WFX satellite library | Author: Sergei Y.Kitáev
//
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
using System;

using WF = System.Windows.Forms;

using CommonHelpers;

namespace WFX {

//**************************************************************************************************
partial class MessageBox {
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

public static void ShowSuccess([HOptional] ShowMessageExtraInfo extraInfo,string text)
{
   ShowSuccess(extraInfo,(WF.IWin32Window)null,text);
}

public static WF.DialogResult ShowSuccess( [HOptional] ShowMessageExtraInfo extraInfo,
                                           string text, WF.MessageBoxButtons buttons )
{
   return ShowSuccess(extraInfo,(WF.IWin32Window)null,text,buttons);
}

public static WF.DialogResult ShowSuccess( [HOptional] ShowMessageExtraInfo extraInfo,
                                           string text, WF.MessageBoxButtons buttons,
                                           WF.DialogResult defaultResult )
{
   return ShowSuccess(extraInfo,(WF.IWin32Window)null,text,buttons,defaultResult);
}

//--------------------------------------------------------------------------------------------------

public static void ShowSuccess( [HOptional] ShowMessageExtraInfo extraInfo,
                                string text, [HOptional] string caption )
{
   ShowSuccess(extraInfo,(WF.IWin32Window)null,text,caption);
}

public static WF.DialogResult ShowSuccess( [HOptional] ShowMessageExtraInfo extraInfo,
                                           string text, [HOptional] string caption,
                                           WF.MessageBoxButtons buttons )
{
   return ShowSuccess(extraInfo,(WF.IWin32Window)null,text,caption,buttons);
}

public static WF.DialogResult ShowSuccess( [HOptional] ShowMessageExtraInfo extraInfo,
                                           string text, [HOptional] string caption,
                                           WF.MessageBoxButtons buttons,
                                           WF.DialogResult defaultResult )
{
   return ShowSuccess(extraInfo,(WF.IWin32Window)null,text,caption,buttons,defaultResult);
}

//==================================================================================================

public static void ShowSuccess( [HOptional] ShowMessageExtraInfo extraInfo,
                                [HOptional] WF.IWin32Window owner, string text )
{
   ShowSuccess(extraInfo,owner,text,null);
}

public static WF.DialogResult ShowSuccess( [HOptional] ShowMessageExtraInfo extraInfo,
                                           [HOptional] WF.IWin32Window owner, string text,
                                           WF.MessageBoxButtons buttons )
{
   return ShowSuccess(extraInfo,owner,text,null,buttons);
}

public static WF.DialogResult ShowSuccess( [HOptional] ShowMessageExtraInfo extraInfo,
                                           [HOptional] WF.IWin32Window owner, string text,
                                           WF.MessageBoxButtons buttons,
                                           WF.DialogResult defaultResult )
{
   return ShowSuccess(extraInfo,owner,text,null,buttons,defaultResult);
}

//--------------------------------------------------------------------------------------------------

public static void ShowSuccess( [HOptional] ShowMessageExtraInfo extraInfo,
                                [HOptional] WF.IWin32Window owner,
                                string text, [HOptional] string caption )
{
   ShowSuccess(extraInfo,owner,text,caption,WF.MessageBoxButtons.OK);
}

public static WF.DialogResult ShowSuccess( [HOptional] ShowMessageExtraInfo extraInfo,
                                           [HOptional] WF.IWin32Window owner,
                                           string text, [HOptional] string caption,
                                           WF.MessageBoxButtons buttons )
{
   return ShowSuccess(
      extraInfo, owner, text, caption, buttons,
      DefaultResultFromButtons(buttons) );
}

public static WF.DialogResult ShowSuccess( [HOptional] ShowMessageExtraInfo extraInfo,
                                           [HOptional] WF.IWin32Window owner,
                                           string text, [HOptional] string caption,
                                           WF.MessageBoxButtons buttons,
                                           WF.DialogResult defaultResult )
{
   return ShowMessage(
      extraInfo ?? new ShowMessageExtraInfo( HSounds.Success ),
      owner, text, caption ?? SuccessCaption,
      buttons, WF.MessageBoxIcon.Exclamation,
      defaultResult );
}

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
} // MessageBox
//**************************************************************************************************

} // WFX
