xref: /haiku/src/apps/haikudepot/ui/App.h (revision 6d519fd17558a53659c82f7a5ac101b7b6be1213)
104c9d578SStephan Aßmus /*
204c9d578SStephan Aßmus  * Copyright 2013, Stephan Aßmus <superstippi@gmx.de>.
304c9d578SStephan Aßmus  * All rights reserved. Distributed under the terms of the MIT License.
404c9d578SStephan Aßmus  */
504c9d578SStephan Aßmus #ifndef APP_H
604c9d578SStephan Aßmus #define APP_H
704c9d578SStephan Aßmus 
804c9d578SStephan Aßmus 
904c9d578SStephan Aßmus #include <Application.h>
1004c9d578SStephan Aßmus 
1104c9d578SStephan Aßmus 
12*6d519fd1SStephan Aßmus class BEntry;
1304c9d578SStephan Aßmus class MainWindow;
1404c9d578SStephan Aßmus 
1504c9d578SStephan Aßmus 
1604c9d578SStephan Aßmus class App : public BApplication {
1704c9d578SStephan Aßmus public:
1804c9d578SStephan Aßmus 								App();
1904c9d578SStephan Aßmus 	virtual						~App();
2004c9d578SStephan Aßmus 
2104c9d578SStephan Aßmus 	virtual	bool				QuitRequested();
2204c9d578SStephan Aßmus 	virtual	void				ReadyToRun();
2304c9d578SStephan Aßmus 	virtual	void				MessageReceived(BMessage* message);
24*6d519fd1SStephan Aßmus 	virtual void				RefsReceived(BMessage* message);
25*6d519fd1SStephan Aßmus 	virtual void				ArgvReceived(int32 argc, char* argv[]);
2604c9d578SStephan Aßmus 
2704c9d578SStephan Aßmus private:
28*6d519fd1SStephan Aßmus 			void				_Open(const BEntry& entry);
29*6d519fd1SStephan Aßmus 			void				_ShowWindow(MainWindow* window);
3004c9d578SStephan Aßmus 
31*6d519fd1SStephan Aßmus 			bool				_LoadSettings(BMessage& settings);
32*6d519fd1SStephan Aßmus 			void				_StoreSettings(const BMessage& windowSettings);
33*6d519fd1SStephan Aßmus 			BRect				_GetNextWindowFrame(bool singlePackageMode);
34*6d519fd1SStephan Aßmus 
35*6d519fd1SStephan Aßmus private:
3604c9d578SStephan Aßmus 			MainWindow*			fMainWindow;
37*6d519fd1SStephan Aßmus 			int32				fWindowCount;
38*6d519fd1SStephan Aßmus 
39*6d519fd1SStephan Aßmus 			BMessage			fSettings;
40*6d519fd1SStephan Aßmus 			bool				fSettingsRead;
4104c9d578SStephan Aßmus };
4204c9d578SStephan Aßmus 
4304c9d578SStephan Aßmus 
4404c9d578SStephan Aßmus #endif // APP_H
45