xref: /haiku/src/apps/diskusage/MainWindow.h (revision 746cac055adc6ac3308c7bc2d29040fb95689cc9)
1 /*
2  * Copyright (c) 2008 Stephan Aßmus <superstippi@gmx.de>. All rights reserved.
3  * Distributed under the terms of the MIT/X11 license.
4  *
5  * Copyright (c) 1999 Mike Steed. You are free to use and distribute this software
6  * as long as it is accompanied by it's documentation and this copyright notice.
7  * The software comes with no warranty, etc.
8  */
9 #ifndef MAIN_WINDOW_H
10 #define MAIN_WINDOW_H
11 
12 #include <Window.h>
13 
14 
15 class BVolume;
16 class ControlsView;
17 struct FileInfo;
18 class PieView;
19 class StatusView;
20 
21 class MainWindow: public BWindow {
22 public:
23 								MainWindow(BRect pieRect);
24 	virtual						~MainWindow();
25 
26 	virtual	void				MessageReceived(BMessage* message);
27 	virtual	void				Zoom(BPoint origin, float width, float height);
28 	virtual	void				FrameResized(float width, float height);
29 	virtual	bool				QuitRequested();
30 
31 			void				ShowInfo(const FileInfo* info);
32 			void				SetRescanEnabled(bool enabled);
33 			BVolume*			FindDeviceFor(dev_t device,
34 									bool invoke = false);
35 
36 private:
37 			bool				_FixAspectRatio(float* width, float* height);
38 
39 			ControlsView*		fControlsView;
40 			PieView*			fPieView;
41 			StatusView*			fStatusView;
42 };
43 
44 #endif // MAIN_WINDOW_H
45