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