xref: /haiku/headers/private/interface/AboutWindow.h (revision 22440f4105cafc95cc1d49f9bc65bb395c527d86)
1 /*
2  * Copyright 2007-2012 Haiku, Inc.
3  * Distributed under the terms of the MIT License.
4  *
5  * Authors:
6  *		Ryan Leavengood <leavengood@gmail.com>
7  *		John Scipione <jscipione@gmail.com>
8  */
9 #ifndef B_ABOUT_WINDOW_H
10 #define B_ABOUT_WINDOW_H
11 
12 
13 #include <GroupView.h>
14 #include <Window.h>
15 #include <View.h>
16 
17 
18 class AboutView;
19 class BBitmap;
20 class BPoint;
21 
22 class BAboutWindow : public BWindow {
23 public:
24 							BAboutWindow(const char* appName,
25 								const char* signature);
26 	virtual					~BAboutWindow();
27 
28 	virtual	void			Show();
29 
30 			BPoint			AboutPosition(float width, float height);
31 			void			AddDescription(const char* description);
32 			void			AddCopyright(int32 firstCopyrightYear,
33 								const char* copyrightHolder,
34 								const char** extraCopyrights = NULL);
35 			void			AddAuthors(const char** authors);
36 			void			AddSpecialThanks(const char** thanks);
37 			void			AddVersionHistory(const char** history);
38 			void			AddExtraInfo(const char* extraInfo);
39 
40 			void			AddText(const char* header,
41 								const char** contents = NULL);
42 
43 			BBitmap*		Icon();
44 	virtual	void			SetIcon(BBitmap* icon);
45 
46 			const char*		Name();
47 	virtual	void			SetName(const char* name);
48 
49 			const char*		Version();
50 	virtual	void			SetVersion(const char* version);
51 
52 private:
53 	virtual	void			_ReservedAboutWindow20();
54 	virtual	void			_ReservedAboutWindow19();
55 	virtual	void			_ReservedAboutWindow18();
56 	virtual	void			_ReservedAboutWindow17();
57 	virtual	void			_ReservedAboutWindow16();
58 	virtual	void			_ReservedAboutWindow15();
59 	virtual	void			_ReservedAboutWindow14();
60 	virtual	void			_ReservedAboutWindow13();
61 	virtual	void			_ReservedAboutWindow12();
62 	virtual	void			_ReservedAboutWindow11();
63 	virtual	void			_ReservedAboutWindow10();
64 	virtual	void			_ReservedAboutWindow9();
65 	virtual	void			_ReservedAboutWindow8();
66 	virtual	void			_ReservedAboutWindow7();
67 	virtual	void			_ReservedAboutWindow6();
68 	virtual	void			_ReservedAboutWindow5();
69 	virtual	void			_ReservedAboutWindow4();
70 	virtual	void			_ReservedAboutWindow3();
71 	virtual	void			_ReservedAboutWindow2();
72 	virtual	void			_ReservedAboutWindow1();
73 
74 private:
75 			AboutView*		fAboutView;
76 
77 			// FBC Padding
78 			uint32			_reserved[20];
79 };
80 
81 
82 #endif	// B_ABOUT_WINDOW_H
83