xref: /haiku/src/preferences/notifications/NotificationsView.h (revision 2b76973fa2401f7a5edf68e6470f3d3210cbcff3)
1 /*
2  * Copyright 2010, Haiku, Inc. All Rights Reserved.
3  * Copyright 2009, Pier Luigi Fiorini.
4  * Distributed under the terms of the MIT License.
5  */
6 #ifndef _APPS_VIEW_H
7 #define _APPS_VIEW_H
8 
9 #include <View.h>
10 
11 #include <notification/AppUsage.h>
12 
13 typedef std::map<BString, AppUsage *> appusage_t;
14 
15 class BCheckBox;
16 class BTextControl;
17 class BColumnListView;
18 class BStringColumn;
19 class BDateColumn;
20 
21 class NotificationsView : public BView {
22 public:
23 								NotificationsView();
24 
25 	virtual	void				AttachedToWindow();
26 	virtual	void				MessageReceived(BMessage* msg);
27 
28 private:
29 			status_t			_LoadAppUsage();
30 			void				_PopulateApplications();
31 			void				_Populate(AppUsage* usage);
32 
33 			appusage_t			fAppFilters;
34 			BCheckBox*			fBlockAll;
35 			BTextControl*		fSearch;
36 			BColumnListView*	fApplications;
37 			BStringColumn*		fAppCol;
38 			BStringColumn*		fAppEnabledCol;
39 			BColumnListView*	fNotifications;
40 			BStringColumn*		fTitleCol;
41 			BDateColumn*		fDateCol;
42 			BStringColumn*		fTypeCol;
43 			BStringColumn*		fAllowCol;
44 };
45 
46 #endif // _APPS_VIEW_H
47