xref: /haiku/src/apps/installer/InstallerWindow.h (revision 93aeb8c3bc3f13cb1f282e3e749258a23790d947)
1 /*
2  * Copyright 2005, Jérôme DUVAL. All rights reserved.
3  * Distributed under the terms of the MIT License.
4  */
5 
6 #ifndef _InstallerWindow_h
7 #define _InstallerWindow_h
8 
9 #include <Box.h>
10 #include <Button.h>
11 #include <Menu.h>
12 #include <MenuField.h>
13 #include <ScrollView.h>
14 #include <TextView.h>
15 #include <Window.h>
16 #include "CopyEngine.h"
17 #include "DrawButton.h"
18 #include "PackageViews.h"
19 
20 #define INSTALLER_RIGHT 402
21 
22 class InstallerWindow : public BWindow {
23 public:
24 	InstallerWindow(BRect frameRect);
25 	virtual ~InstallerWindow();
26 
27 	virtual void MessageReceived(BMessage *msg);
28 	virtual bool QuitRequested();
29 	void SetStatusMessage(char *text);
30 private:
31 	void DisableInterface(bool disable);
32 	void LaunchDriveSetup();
33 	void PublishPackages();
34 	void ShowBottom();
35 	void StartScan();
36 	void AdjustMenus();
37 	static int ComparePackages(const void *firstArg, const void *secondArg);
38 	BBox *fBackBox;
39 	BButton *fBeginButton, *fSetupButton;
40 	DrawButton *fDrawButton;
41 	bool fDriveSetupLaunched;
42 	BTextView *fStatusView;
43 	BMenu* fSrcMenu, *fDestMenu;
44 	BMenuField* fSrcMenuField, *fDestMenuField;
45 	PackagesView *fPackagesView;
46 	BScrollView *fPackagesScrollView;
47 	BStringView *fSizeView;
48 
49 	BBitmap *fLogo;
50 	BPoint fDrawPoint;
51 	CopyEngine fCopyEngine;
52 };
53 
54 #endif /* _InstallerWindow_h */
55