xref: /haiku/src/apps/debugger/user_interface/gui/utility_windows/BreakpointEditWindow.h (revision edf74e6ca88fd7a0dd394378790ebb7e2da3bc19)
1 /*
2  * Copyright 2014, Rene Gollent, rene@gollent.com.
3  * Distributed under the terms of the MIT License.
4  */
5 #ifndef BREAKPOINT_EDIT_WINDOW_H
6 #define BREAKPOINT_EDIT_WINDOW_H
7 
8 
9 #include <Window.h>
10 
11 #include "Team.h"
12 
13 #include "types/Types.h"
14 
15 
16 class BButton;
17 class BRadioButton;
18 class BTextControl;
19 class Team;
20 class UserBreakpoint;
21 class UserInterfaceListener;
22 
23 
24 class BreakpointEditWindow : public BWindow {
25 public:
26 								BreakpointEditWindow(
27 									::Team* team,
28 									UserBreakpoint* breakpoint,
29 									UserInterfaceListener* listener,
30 									BHandler* target);
31 
32 								~BreakpointEditWindow();
33 
34 	static	BreakpointEditWindow* Create(::Team* team,
35 									UserBreakpoint* breakpoint,
36 									UserInterfaceListener* listener,
37 									BHandler* target);
38 									// throws
39 
40 	virtual	void				MessageReceived(BMessage* message);
41 
42 	virtual	void				Show();
43 
44 private:
45 			void	 			_Init();
46 			void				_UpdateState();
47 
48 private:
49 			::Team*				fTeam;
50 			UserInterfaceListener* fListener;
51 			UserBreakpoint* 	fTargetBreakpoint;
52 			BTextControl*		fConditionInput;
53 			BButton*			fSaveButton;
54 			BButton*			fCancelButton;
55 			BRadioButton*		fAlwaysRadio;
56 			BRadioButton*		fConditionRadio;
57 			BHandler*			fTarget;
58 };
59 
60 
61 #endif // BREAKPOINT_EDIT_WINDOW
62