int XMessageBox::alertRetryCancel(const char *windowTitle, const char *message)
{
   mMessage = message;
   mTitle = windowTitle;
   mButtons.clear();
   mButtons.push_back(XMessageBoxButton("Retry", Retry));
   mButtons.push_back(XMessageBoxButton("Cancel", Cancel));
   return show();
}
int XMessageBox::alertAssert(const char *windowTitle, const char *message)
{
    mMessage = message;
    mTitle = windowTitle;
    mButtons.clear();
    mButtons.push_back(XMessageBoxButton("Exit", OK));
    mButtons.push_back(XMessageBoxButton("Ignore", Cancel));
    mButtons.push_back(XMessageBoxButton("Ignore All", IgnoreAll));
    mButtons.push_back(XMessageBoxButton("Debug", Retry));
    return show();
}
int XMessageBox::alertOK(const char *windowTitle, const char *message)
{
   mMessage = message;
   mTitle = windowTitle;
   mButtons.clear();
   mButtons.push_back(XMessageBoxButton("OK", OK));
   return show();
}