1 /* 2 * Copyright 2013-2015, Rene Gollent, rene@gollent.com. 3 * Distributed under the terms of the MIT License. 4 */ 5 #ifndef EXCEPTION_STOP_CONFIG_VIEW_H 6 #define EXCEPTION_STOP_CONFIG_VIEW_H 7 8 9 #include <GroupView.h> 10 11 #include "types/Types.h" 12 13 14 class BBox; 15 class BButton; 16 class BCheckBox; 17 class ImageDebugInfo; 18 class Team; 19 class UserInterfaceListener; 20 21 22 class ExceptionStopConfigView : public BGroupView { 23 public: 24 ExceptionStopConfigView(::Team* team, 25 UserInterfaceListener* listener); 26 27 ~ExceptionStopConfigView(); 28 29 static ExceptionStopConfigView* Create(::Team* team, 30 UserInterfaceListener* listener); 31 // throws 32 33 virtual void AttachedToWindow(); 34 virtual void MessageReceived(BMessage* message); 35 36 private: 37 void _Init(); 38 void _UpdateThrownBreakpoints(bool enable); 39 status_t _FindExceptionFunction(ImageDebugInfo* info, 40 target_addr_t& _foundAddress) const; 41 42 void _UpdateExceptionState(); 43 44 private: 45 ::Team* fTeam; 46 UserInterfaceListener* fListener; 47 BCheckBox* fExceptionThrown; 48 BCheckBox* fExceptionCaught; 49 }; 50 51 52 #endif // EXCEPTION_STOP_CONFIG_VIEW_H 53