1/*
2 * Copyright 2008-2010, Haiku, Inc. All rights reserved.
3 * Distributed under the terms of the MIT License.
4 *
5 * Authors:
6 *		Michael Pfeiffer <laplace@users.sourceforge.net>
7 */
8#ifndef FILE_SELECTION_PAGE_H
9#define FILE_SELECTION_PAGE_H
10
11
12#include "WizardPageView.h"
13
14#include <FilePanel.h>
15
16
17class BButton;
18class BTextControl;
19class BTextView;
20
21
22class FileSelectionPage : public WizardPageView {
23public:
24								FileSelectionPage(BMessage* settings,
25									BRect frame, const char* name,
26									const char* description,
27									file_panel_mode mode);
28	virtual						~FileSelectionPage();
29
30	virtual	void				FrameResized(float width, float height);
31	virtual	void				AttachedToWindow();
32	virtual	void				MessageReceived(BMessage* message);
33
34	virtual	void				PageCompleted();
35
36private:
37			void				_BuildUI(const char* description);
38			void				_Layout();
39			void				_OpenFilePanel();
40			void				_SetFileFromFilePanelMessage(BMessage* message);
41			void				_FilePanelCanceled();
42
43private:
44			file_panel_mode		fMode;
45			BFilePanel*			fFilePanel;
46
47			BTextView*			fDescription;
48			BTextControl*		fFile;
49			BButton*			fSelect;
50};
51
52
53#endif	// FILE_SELECTION_PAGE_H
54