xref: /haiku/src/preferences/repositories/RepositoriesWindow.h (revision 5bf2b6eb74cbbee276a8050078917e8fbbea11e9)
1*5bf2b6ebSBrian Hill /*
2*5bf2b6ebSBrian Hill  * Copyright 2017 Haiku Inc. All rights reserved.
3*5bf2b6ebSBrian Hill  * Distributed under the terms of the MIT License.
4*5bf2b6ebSBrian Hill  *
5*5bf2b6ebSBrian Hill  * Authors:
6*5bf2b6ebSBrian Hill  *		Brian Hill
7*5bf2b6ebSBrian Hill  */
8*5bf2b6ebSBrian Hill #ifndef REPOSITORIES_WINDOW_H
9*5bf2b6ebSBrian Hill #define REPOSITORIES_WINDOW_H
10*5bf2b6ebSBrian Hill 
11*5bf2b6ebSBrian Hill 
12*5bf2b6ebSBrian Hill #include <Node.h>
13*5bf2b6ebSBrian Hill #include <Window.h>
14*5bf2b6ebSBrian Hill 
15*5bf2b6ebSBrian Hill #include "AddRepoWindow.h"
16*5bf2b6ebSBrian Hill #include "RepositoriesSettings.h"
17*5bf2b6ebSBrian Hill #include "RepositoriesView.h"
18*5bf2b6ebSBrian Hill 
19*5bf2b6ebSBrian Hill 
20*5bf2b6ebSBrian Hill class RepositoriesWindow : public BWindow {
21*5bf2b6ebSBrian Hill public:
22*5bf2b6ebSBrian Hill 							RepositoriesWindow();
23*5bf2b6ebSBrian Hill 							~RepositoriesWindow();
24*5bf2b6ebSBrian Hill 	virtual	bool			QuitRequested();
25*5bf2b6ebSBrian Hill 	virtual void			MessageReceived(BMessage*);
26*5bf2b6ebSBrian Hill 
27*5bf2b6ebSBrian Hill private:
28*5bf2b6ebSBrian Hill 	RepositoriesSettings	fSettings;
29*5bf2b6ebSBrian Hill 	RepositoriesView*		fView;
30*5bf2b6ebSBrian Hill 	AddRepoWindow*			fAddWindow;
31*5bf2b6ebSBrian Hill 	BMessenger				fMessenger;
32*5bf2b6ebSBrian Hill 	node_ref				fPackageNodeRef;
33*5bf2b6ebSBrian Hill 		// node_ref to watch for changes to package-repositories directory
34*5bf2b6ebSBrian Hill 	status_t				fPackageNodeStatus;
35*5bf2b6ebSBrian Hill 	bool					fWatchingPackageNode;
36*5bf2b6ebSBrian Hill 		// true when package-repositories directory is being watched
37*5bf2b6ebSBrian Hill 	void					_StartWatching();
38*5bf2b6ebSBrian Hill 	void					_StopWatching();
39*5bf2b6ebSBrian Hill };
40*5bf2b6ebSBrian Hill 
41*5bf2b6ebSBrian Hill 
42*5bf2b6ebSBrian Hill #endif
43