]> git.saurik.com Git - wxWidgets.git/blob - docs/doxygen/mainpages/libs.h
Forward declare classes instead of including their declarations.
[wxWidgets.git] / docs / doxygen / mainpages / libs.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: libs.h
3 // Purpose: Libraries page of the Doxygen manual
4 // Author: wxWidgets team
5 // RCS-ID: $Id$
6 // Licence: wxWindows licence
7 /////////////////////////////////////////////////////////////////////////////
8
9 /**
10
11 @page page_libs Library List
12
13 wxWidgets can be built either as a single large library (this is called a
14 <em>monolithic build</em>) or as several smaller libraries
15 (<em>multilib build</em>). Multilib build is the default.
16
17 wxWidgets library is divided into libraries briefly described below. This
18 diagram shows the dependencies between them:
19
20 @dot
21 digraph Dependancies
22 {
23 node [shape = ellipse, fontname = "Courier", fontsize = 10, style = filled];
24
25 wxBase [URL = "\ref page_libs_wxbase"];
26
27 wxCore [fillcolor = deepskyblue, URL = "\ref page_libs_wxcore"];
28 wxNet [fillcolor = deepskyblue, URL = "\ref page_libs_wxnet"];
29 wxXML [fillcolor = deepskyblue, URL = "\ref page_libs_wxxml"];
30
31 wxAdvanced [fillcolor = green, URL = "\ref page_libs_wxadv"];
32 wxAUI [fillcolor = green, URL = "\ref page_libs_wxaui"];
33 wxGL [fillcolor = green, URL = "\ref page_libs_wxgl"];
34 wxHTML [fillcolor = green, URL = "\ref page_libs_wxhtml"];
35 wxMedia [fillcolor = green, URL = "\ref page_libs_wxmedia"];
36 wxPropertyGrid [fillcolor = green, URL = "\ref page_libs_wxpropgrid"];
37 wxQA [fillcolor = green, URL = "\ref page_libs_wxqa"];
38 wxRibbon [fillcolor = green, URL = "\ref page_libs_wxribbon"];
39 wxRichText [fillcolor = green, URL = "\ref page_libs_wxrichtext"];
40 wxSTC [fillcolor = green, URL = "\ref page_libs_wxstc"];
41 wxXRC [fillcolor = green, URL = "\ref page_libs_wxxrc"];
42
43 wxCore -> wxBase;
44 wxNet -> wxBase;
45 wxXML -> wxBase;
46
47 wxAdvanced -> wxCore;
48 wxAUI -> wxAdvanced; wxAUI -> wxHTML; wxAUI -> wxXML;
49 wxGL -> wxCore;
50 wxHTML -> wxCore;
51 wxMedia -> wxCore;
52 wxPropertyGrid -> wxAdvanced;
53 wxQA -> wxCore; wxQA -> wxXML;
54 wxRibbon -> wxCore;
55 wxRichText -> wxAdvanced; wxRichText -> wxHTML; wxRichText -> wxXML;
56 wxSTC -> wxCore;
57 wxXRC -> wxAdvanced; wxXRC -> wxHTML; wxXRC -> wxXML;
58 }
59 @enddot
60
61 Please note that arrows indicate the "depends from" relation and that all blue
62 libraries depend on the @ref page_libs_wxbase library (i.e. they are non-GUI
63 libraries), and all green libraries depend on the @ref page_libs_wxcore library
64 (i.e. they are GUI libraries).
65
66
67 @section page_libs_wxbase wxBase
68
69 Every wxWidgets application must link against this library. It contains
70 mandatory classes that any wxWidgets code depends on (e.g. wxString) and
71 portability classes that abstract differences between platforms. wxBase can be
72 used to develop console mode applications, it does not require any GUI
73 libraries or running X Window System on Unix.
74
75
76 @section page_libs_wxcore wxCore
77
78 Basic GUI classes such as GDI classes or controls are in this library. All
79 wxWidgets GUI applications must link against this library, only console mode
80 applications don't.
81
82 Requires @ref page_libs_wxbase.
83
84
85 @section page_libs_wxaui wxAui
86
87 This contains the Advanced User Interface docking library.
88
89 Requires @ref page_libs_wxadv, @ref page_libs_wxhtml, @ref page_libs_wxxml,
90 @ref page_libs_wxcore, @ref page_libs_wxbase.
91
92
93 @section page_libs_wxnet wxNet
94
95 Classes for network access:
96
97 @li wxSocket classes (wxSocketClient, wxSocketServer and related classes)
98 @li wxSocketOutputStream and wxSocketInputStream
99 @li sockets-based IPC classes (wxTCPServer, wxTCPClient and wxTCPConnection)
100 @li wxURL
101 @li wxInternetFSHandler (a wxFileSystem handler)
102
103 Requires @ref page_libs_wxbase.
104
105
106 @section page_libs_wxpropgrid wxPropertyGrid
107
108 This contains the wxPropertyGrid control.
109
110 Requires @ref page_libs_wxadv, @ref page_libs_wxcore, @ref page_libs_wxbase.
111
112
113 @section page_libs_wxribbon wxRibbon
114
115 This contains the Ribbon User Interface components library.
116
117 Requires @ref page_libs_wxcore, @ref page_libs_wxbase.
118
119
120 @section page_libs_wxrichtext wxRichText
121
122 This contains generic rich text control functionality.
123
124 Requires @ref page_libs_wxadv, @ref page_libs_wxhtml, @ref page_libs_wxxml,
125 @ref page_libs_wxcore, @ref page_libs_wxbase.
126
127
128 @section page_libs_wxxml wxXML
129
130 This library contains simple classes for parsing XML documents.
131
132 Requires @ref page_libs_wxbase.
133
134
135 @section page_libs_wxadv wxAdvanced
136
137 Advanced or rarely used GUI classes:
138
139 @li wxCalendarCtrl
140 @li wxGrid classes
141 @li wxJoystick
142 @li wxLayoutAlgorithm
143 @li wxSplashScreen
144 @li wxTaskBarIcon
145 @li wxSound
146 @li wxWizard
147 @li wxSashLayoutWindow
148 @li wxSashWindow
149 @li ...others
150
151 Requires @ref page_libs_wxcore and @ref page_libs_wxbase.
152
153
154 @section page_libs_wxmedia wxMedia
155
156 Miscellaneous classes related to multimedia. Currently this library only
157 contains wxMediaCtrl but more classes will be added in the future.
158
159 Requires @ref page_libs_wxcore and @ref page_libs_wxbase.
160
161
162 @section page_libs_wxgl wxGL
163
164 This library contains wxGLCanvas class for integrating OpenGL library with
165 wxWidgets. Unlike all others, this library is @b not part of the monolithic
166 library, it is always built as separate library.
167
168 Requires @ref page_libs_wxcore and @ref page_libs_wxbase.
169
170
171 @section page_libs_wxhtml wxHTML
172
173 Simple HTML renderer and other @ref overview_html are contained in this
174 library, as well as wxHtmlHelpController, wxBestHelpController and
175 wxHtmlListBox.
176
177 Requires @ref page_libs_wxcore and @ref page_libs_wxbase.
178
179
180 @section page_libs_wxqa wxQA
181
182 This is the library containing extra classes for quality assurance. Currently
183 it only contains wxDebugReport and related classes, but more will be added to
184 it in the future.
185
186 Requires @ref page_libs_wxxml, @ref page_libs_wxcore, @ref page_libs_wxbase.
187
188
189 @section page_libs_wxxrc wxXRC
190
191 This library contains wxXmlResource class that provides access to XML resource
192 files in XRC format.
193
194 Requires @ref page_libs_wxadv, @ref page_libs_wxhtml, @ref page_libs_wxxml,
195 @ref page_libs_wxcore, @ref page_libs_wxbase.
196
197
198 @section page_libs_wxstc wxSTC
199
200 STC (Styled Text Control) is a wrapper around Scintilla, a syntax-highlighting
201 text editor. See <http://www.scintilla.org/> for more info about Scintilla.
202
203 Requires @ref page_libs_wxcore, @ref page_libs_wxbase.
204
205 */
206