00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #if !defined(FXEXCEPTIONBOX_H) && !defined(FX_DISABLEGUI)
00023 #define FXEXCEPTIONBOX_H
00024
00025 #include "FXHandedInterface.h"
00026
00027 namespace FX {
00028
00038 class FXException;
00039 class FXIcon;
00040 class FXExceptionDetails;
00041 class FXAPI FXExceptionDialog : public FXHandedDialog
00042 {
00043 FXDECLARE(FXExceptionDialog)
00044 friend class FXExceptionDetails;
00045 FXException *e;
00046 FXExceptionDetails *details;
00047 FXExceptionDialog(const FXExceptionDialog &);
00048 FXExceptionDialog &operator=(const FXExceptionDialog &);
00049 FXDLLLOCAL void init();
00050 protected:
00051 FXExceptionDialog() {}
00052 public:
00053 long onCmdClicked(FXObject*,FXSelector,void*);
00054 long onCmdFullDetail(FXObject*,FXSelector,void*);
00055 enum
00056 {
00057 ID_RETRY=FXDialogBox::ID_LAST,
00058 ID_QUIT,
00059 ID_FULLDETAIL,
00060 ID_LAST
00061 };
00064 FXExceptionDialog(FXApp *a, FXException &e, FXuint opts=DECOR_ALL,FXint x=0,FXint y=0,FXint w=0,FXint h=0,FXint pl=DEFAULT_PAD,FXint pr=DEFAULT_PAD,FXint pt=DEFAULT_PAD,FXint pb=DEFAULT_PAD,FXint hs=DEFAULT_SPACING,FXint vs=DEFAULT_SPACING);
00066 FXExceptionDialog(FXWindow *owner, FXException &e, FXuint opts=DECOR_ALL,FXint x=0,FXint y=0,FXint w=0,FXint h=0,FXint pl=DEFAULT_PAD,FXint pr=DEFAULT_PAD,FXint pt=DEFAULT_PAD,FXint pb=DEFAULT_PAD,FXint hs=DEFAULT_SPACING,FXint vs=DEFAULT_SPACING);
00067 ~FXExceptionDialog();
00068 virtual void create();
00073 virtual FXuint execute(FXuint placement=PLACEMENT_CURSOR);
00074
00075 };
00076
00077 }
00078
00079 #endif