diff options
Diffstat (limited to 'utils/mxtk/mxmessagebox.cpp')
| -rw-r--r-- | utils/mxtk/mxmessagebox.cpp | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/utils/mxtk/mxmessagebox.cpp b/utils/mxtk/mxmessagebox.cpp new file mode 100644 index 0000000..621fb09 --- /dev/null +++ b/utils/mxtk/mxmessagebox.cpp @@ -0,0 +1,63 @@ +// +// mxToolKit (c) 1999 by Mete Ciragan +// +// file: mxMessageBox.cpp +// implementation: Win32 API +// last modified: Mar 14 1999, Mete Ciragan +// copyright: The programs and associated files contained in this +// distribution were developed by Mete Ciragan. The programs +// are not in the public domain, but they are freely +// distributable without licensing fees. These programs are +// provided without guarantee or warrantee expressed or +// implied. +// +#include "mxtk/mxMessageBox.h" +#include "mxtk/mxWindow.h" +#include <windows.h> +#include <commdlg.h> +#include <string.h> + + + +int +mxMessageBox (mxWindow *parent, const char *msg, const char *title, int style) +{ + HWND hwndParent = 0; + if (parent) + hwndParent = (HWND) parent->getHandle (); + + UINT uType = 0; + + if (style & MX_MB_OK) + uType |= MB_OK; + else if (style & MX_MB_YESNO) + uType |= MB_YESNO; + else if (style & MX_MB_YESNOCANCEL) + uType |= MB_YESNOCANCEL; + + if (style & MX_MB_INFORMATION) + uType |= MB_ICONINFORMATION; + else if (style & MX_MB_ERROR) + uType |= MB_ICONHAND; + else if (style & MX_MB_WARNING) + uType |= MB_ICONEXCLAMATION; + else if (style & MX_MB_QUESTION) + uType |= MB_ICONQUESTION; + + int ret = MessageBox (hwndParent, msg, title, uType); + + switch (ret) + { + case IDOK: + case IDYES: + return 0; + + case IDNO: + return 1; + + case IDCANCEL: + return 2; + } + + return 0; +} |