xref: /haiku/headers/private/interface/AboutWindow.h (revision bab64f65bb775dc23060e276f1f1c4498ab7af6c)
19ce450b9SJohn Scipione /*
29ce450b9SJohn Scipione  * Copyright 2007-2012 Haiku, Inc.
39ce450b9SJohn Scipione  * Distributed under the terms of the MIT License.
49ce450b9SJohn Scipione  *
59ce450b9SJohn Scipione  * Authors:
69ce450b9SJohn Scipione  *		Ryan Leavengood <leavengood@gmail.com>
79ce450b9SJohn Scipione  *		John Scipione <jscipione@gmail.com>
89ce450b9SJohn Scipione  */
99ce450b9SJohn Scipione #ifndef B_ABOUT_WINDOW_H
109ce450b9SJohn Scipione #define B_ABOUT_WINDOW_H
119ce450b9SJohn Scipione 
129ce450b9SJohn Scipione 
139ce450b9SJohn Scipione #include <GroupView.h>
149ce450b9SJohn Scipione #include <Window.h>
159ce450b9SJohn Scipione #include <View.h>
169ce450b9SJohn Scipione 
179ce450b9SJohn Scipione 
18*1d114757SAugustin Cavalier namespace BPrivate {
199ce450b9SJohn Scipione class AboutView;
20*1d114757SAugustin Cavalier }
219ce450b9SJohn Scipione class BBitmap;
229ce450b9SJohn Scipione class BPoint;
239ce450b9SJohn Scipione 
249ce450b9SJohn Scipione class BAboutWindow : public BWindow {
259ce450b9SJohn Scipione public:
269ce450b9SJohn Scipione 							BAboutWindow(const char* appName,
279ce450b9SJohn Scipione 								const char* signature);
289ce450b9SJohn Scipione 	virtual					~BAboutWindow();
299ce450b9SJohn Scipione 
309ce450b9SJohn Scipione 	virtual	void			Show();
319ce450b9SJohn Scipione 
329ce450b9SJohn Scipione 			BPoint			AboutPosition(float width, float height);
339ce450b9SJohn Scipione 			void			AddDescription(const char* description);
349ce450b9SJohn Scipione 			void			AddCopyright(int32 firstCopyrightYear,
359ce450b9SJohn Scipione 								const char* copyrightHolder,
369ce450b9SJohn Scipione 								const char** extraCopyrights = NULL);
379ce450b9SJohn Scipione 			void			AddAuthors(const char** authors);
389ce450b9SJohn Scipione 			void			AddSpecialThanks(const char** thanks);
399ce450b9SJohn Scipione 			void			AddVersionHistory(const char** history);
409ce450b9SJohn Scipione 			void			AddExtraInfo(const char* extraInfo);
419ce450b9SJohn Scipione 
429ce450b9SJohn Scipione 			void			AddText(const char* header,
439ce450b9SJohn Scipione 								const char** contents = NULL);
449ce450b9SJohn Scipione 
459ce450b9SJohn Scipione 			BBitmap*		Icon();
469ce450b9SJohn Scipione 	virtual	void			SetIcon(BBitmap* icon);
479ce450b9SJohn Scipione 
489ce450b9SJohn Scipione 			const char*		Name();
499ce450b9SJohn Scipione 	virtual	void			SetName(const char* name);
509ce450b9SJohn Scipione 
519ce450b9SJohn Scipione 			const char*		Version();
529ce450b9SJohn Scipione 	virtual	void			SetVersion(const char* version);
539ce450b9SJohn Scipione 
549ce450b9SJohn Scipione private:
559ce450b9SJohn Scipione 	virtual	void			_ReservedAboutWindow20();
569ce450b9SJohn Scipione 	virtual	void			_ReservedAboutWindow19();
579ce450b9SJohn Scipione 	virtual	void			_ReservedAboutWindow18();
589ce450b9SJohn Scipione 	virtual	void			_ReservedAboutWindow17();
599ce450b9SJohn Scipione 	virtual	void			_ReservedAboutWindow16();
609ce450b9SJohn Scipione 	virtual	void			_ReservedAboutWindow15();
619ce450b9SJohn Scipione 	virtual	void			_ReservedAboutWindow14();
629ce450b9SJohn Scipione 	virtual	void			_ReservedAboutWindow13();
639ce450b9SJohn Scipione 	virtual	void			_ReservedAboutWindow12();
649ce450b9SJohn Scipione 	virtual	void			_ReservedAboutWindow11();
659ce450b9SJohn Scipione 	virtual	void			_ReservedAboutWindow10();
669ce450b9SJohn Scipione 	virtual	void			_ReservedAboutWindow9();
679ce450b9SJohn Scipione 	virtual	void			_ReservedAboutWindow8();
689ce450b9SJohn Scipione 	virtual	void			_ReservedAboutWindow7();
699ce450b9SJohn Scipione 	virtual	void			_ReservedAboutWindow6();
709ce450b9SJohn Scipione 	virtual	void			_ReservedAboutWindow5();
719ce450b9SJohn Scipione 	virtual	void			_ReservedAboutWindow4();
729ce450b9SJohn Scipione 	virtual	void			_ReservedAboutWindow3();
739ce450b9SJohn Scipione 	virtual	void			_ReservedAboutWindow2();
749ce450b9SJohn Scipione 	virtual	void			_ReservedAboutWindow1();
759ce450b9SJohn Scipione 
769ce450b9SJohn Scipione private:
77*1d114757SAugustin Cavalier 			BPrivate::AboutView* fAboutView;
789ce450b9SJohn Scipione 
799ce450b9SJohn Scipione 			// FBC Padding
809ce450b9SJohn Scipione 			uint32			_reserved[20];
819ce450b9SJohn Scipione };
829ce450b9SJohn Scipione 
839ce450b9SJohn Scipione 
849ce450b9SJohn Scipione #endif	// B_ABOUT_WINDOW_H
85