xref: /haiku/src/apps/debuganalyzer/gui/thread_window/ThreadWindow.h (revision 529067127eca19f3751ae9eba6bf0696cb809622)
1 /*
2  * Copyright 2009, Ingo Weinhold, ingo_weinhold@gmx.de.
3  * Distributed under the terms of the MIT License.
4  */
5 #ifndef THREAD_WINDOW_H
6 #define THREAD_WINDOW_H
7 
8 #include "Model.h"
9 #include "SubWindow.h"
10 
11 
12 class BTabView;
13 class ThreadModel;
14 class ThreadModelLoader;
15 
16 
17 class ThreadWindow : public SubWindow {
18 public:
19 								ThreadWindow(SubWindowManager* manager,
20 									Model* model, Model::Thread* thread);
21 	virtual						~ThreadWindow();
22 
23 	virtual	void				MessageReceived(BMessage* message);
24 
25 	virtual	void				Quit();
26 	virtual	void				Show();
27 
28 private:
29 			class ActivityPage;
30 			class GeneralPage;
31 			class WaitObjectsPage;
32 
33 private:
34 			void				_SetModel(ThreadModel* model);
35 
36 private:
37 			BTabView*			fMainTabView;
38 			GeneralPage*		fGeneralPage;
39 			WaitObjectsPage*	fWaitObjectsPage;
40 			ActivityPage*		fActivityPage;
41 			Model*				fModel;
42 			Model::Thread*		fThread;
43 			ThreadModel*		fThreadModel;
44 			ThreadModelLoader*	fThreadModelLoader;
45 };
46 
47 
48 
49 #endif	// THREAD_WINDOW_H
50