xref: /haiku/headers/private/interface/AboutWindow.h (revision 6aff37d1c79e20748c683ae224bd629f88a5b0be)
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 namespace BPrivate {
19 class AboutView;
20 }
21 class BBitmap;
22 class BPoint;
23 
24 class BAboutWindow : public BWindow {
25 public:
26 							BAboutWindow(const char* appName,
27 								const char* signature);
28 	virtual					~BAboutWindow();
29 
30 	virtual	void			Show();
31 
32 			BPoint			AboutPosition(float width, float height);
33 			void			AddDescription(const char* description);
34 			void			AddCopyright(int32 firstCopyrightYear,
35 								const char* copyrightHolder,
36 								const char** extraCopyrights = NULL);
37 			void			AddAuthors(const char** authors);
38 			void			AddSpecialThanks(const char** thanks);
39 			void			AddVersionHistory(const char** history);
40 			void			AddExtraInfo(const char* extraInfo);
41 
42 			void			AddText(const char* header,
43 								const char** contents = NULL);
44 
45 			BBitmap*		Icon();
46 	virtual	void			SetIcon(BBitmap* icon);
47 
48 			const char*		Name();
49 	virtual	void			SetName(const char* name);
50 
51 			const char*		Version();
52 	virtual	void			SetVersion(const char* version);
53 
54 private:
55 	virtual	void			_ReservedAboutWindow20();
56 	virtual	void			_ReservedAboutWindow19();
57 	virtual	void			_ReservedAboutWindow18();
58 	virtual	void			_ReservedAboutWindow17();
59 	virtual	void			_ReservedAboutWindow16();
60 	virtual	void			_ReservedAboutWindow15();
61 	virtual	void			_ReservedAboutWindow14();
62 	virtual	void			_ReservedAboutWindow13();
63 	virtual	void			_ReservedAboutWindow12();
64 	virtual	void			_ReservedAboutWindow11();
65 	virtual	void			_ReservedAboutWindow10();
66 	virtual	void			_ReservedAboutWindow9();
67 	virtual	void			_ReservedAboutWindow8();
68 	virtual	void			_ReservedAboutWindow7();
69 	virtual	void			_ReservedAboutWindow6();
70 	virtual	void			_ReservedAboutWindow5();
71 	virtual	void			_ReservedAboutWindow4();
72 	virtual	void			_ReservedAboutWindow3();
73 	virtual	void			_ReservedAboutWindow2();
74 	virtual	void			_ReservedAboutWindow1();
75 
76 private:
77 			BPrivate::AboutView* fAboutView;
78 
79 			// FBC Padding
80 			uint32			_reserved[20];
81 };
82 
83 
84 #endif	// B_ABOUT_WINDOW_H
85