home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / ool.zip / OOL / source / xexcept.cpp < prev    next >
C/C++ Source or Header  |  1997-04-05  |  2KB  |  64 lines

  1. #include "xexcept.h"
  2. #include "xsemex.h"
  3. #include "xstring.h"
  4. #include "xmsgbox.h"
  5.  
  6.  
  7. /*@ 
  8. @class XException
  9. @type overview
  10. @symbol _
  11. @remarks The OOL throws exceptions in form of this class. You can catch this exceptions and exceptions
  12. derived from this class in the usual way.<P>
  13. To throw exceptions yourself you may use the macro OOLThrow with exception-text and errorcode, eg<BR>
  14. <PRE>OOLThrow("an exception", 100)</PRE><BR>
  15. For derived exception-calsses this macro is redefined.
  16. */
  17.  
  18.  
  19. /*@ XException :: GetErrorMessage()
  20. @group Get information
  21. @remarks    returns a char pointer with the error text
  22. @returns char * errorText
  23. */
  24.  
  25.  
  26. /*@ XException :: GetErrorCode()
  27. @group Get information
  28. @remarks    returns the error-code
  29. @returns LONG theCode
  30. */
  31.  
  32. /*@ XException :: ShowError( XWindow * w) 
  33. @group Show information
  34. @remarks    Displays a messagebox with information about the exception. This function should only be
  35. used with PM-applications.
  36. @parameters    XWindow * owner    owner window, can be NULL.
  37. */
  38. void XException :: ShowError( XWindow * w) 
  39. {     
  40.     XString m = "Exception message:\n";
  41.     m += msg + "\n\nErrorcode: ";
  42.     m += (long) code;
  43.     m += "\n\nFile: " + file + "\nLine: ";
  44.     m += (long) line;
  45.     XMessageBox( (char*) m, "An Exception occured!", MBOX_OK|MBOX_ERROR, w);
  46. }
  47.  
  48.  
  49. /*@ XException :: PrintError() 
  50. @group Show information
  51. @remarks    Displays information about the exception on the commandline. This function should only be
  52. used with VIO-applications.
  53. */
  54. void XException :: PrintError(void)
  55. {      
  56.     XString m = "Exception message:\n";
  57.     m += msg + "\n\nErrorcode: ";
  58.     m += (long) code;
  59.     m += "\n\nFile: " + file + "\nLine: ";
  60.     m += (long) line;
  61.     printf( "\n%s\n", (char*) m);
  62. }
  63.  
  64.