vfs: check userland buffers before reading them.
[haiku.git] / headers / private / interface / AboutWindow.h
blob749174a25fe2de764cd34b37ad9f81c1b0fdeccf
1 /*
2 * Copyright 2007-2012 Haiku, Inc.
3 * Distributed under the terms of the MIT License.
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
13 #include <GroupView.h>
14 #include <Window.h>
15 #include <View.h>
18 namespace BPrivate {
19 class AboutView;
21 class BBitmap;
22 class BPoint;
24 class BAboutWindow : public BWindow {
25 public:
26 BAboutWindow(const char* appName,
27 const char* signature);
28 virtual ~BAboutWindow();
30 virtual void Show();
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);
42 void AddText(const char* header,
43 const char** contents = NULL);
45 BBitmap* Icon();
46 virtual void SetIcon(BBitmap* icon);
48 const char* Name();
49 virtual void SetName(const char* name);
51 const char* Version();
52 virtual void SetVersion(const char* version);
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();
76 private:
77 BPrivate::AboutView* fAboutView;
79 // FBC Padding
80 uint32 _reserved[20];
84 #endif // B_ABOUT_WINDOW_H