added wxPropertyGrid from Jaakko Salli (#9934)
[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 license
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 wxRichText [fillcolor = green, URL = "\ref page_libs_wxrichtext"];
39 wxSTC [fillcolor = green, URL = "\ref page_libs_wxstc"];
40 wxXRC [fillcolor = green, URL = "\ref page_libs_wxxrc"];
41
42 wxCore -> wxBase;
43 wxNet -> wxBase;
44 wxXML -> wxBase;
45
46 wxAdvanced -> wxCore;
47 wxAUI -> wxAdvanced; wxAUI -> wxHTML; wxAUI -> wxXML;
48 wxGL -> wxCore;
49 wxHTML -> wxCore;
50 wxMedia -> wxCore;
51 wxPropertyGrid -> wxAdvanced;
52 wxQA -> wxCore; wxQA -> wxXML;
53 wxRichText -> wxAdvanced; wxRichText -> wxHTML; wxRichText -> wxXML;
54 wxSTC -> wxCore;
55 wxXRC -> wxAdvanced; wxXRC -> wxHTML; wxXRC -> wxXML;
56 }
57 @enddot
58
59 Please note that arrows indicate the "depends from" relation and that all blue
60 libraries depend on the @ref page_libs_wxbase library (i.e. they are non-GUI
61 libraries), and all green libraries depend on the @ref page_libs_wxcore library
62 (i.e. they are GUI libraries).
63
64
65 @section page_libs_wxbase wxBase
66
67 Every wxWidgets application must link against this library. It contains
68 mandatory classes that any wxWidgets code depends on (e.g. wxString) and
69 portability classes that abstract differences between platforms. wxBase can be
70 used to develop console mode applications, it does not require any GUI
71 libraries or running X Window System on Unix.
72
73
74 @section page_libs_wxcore wxCore
75
76 Basic GUI classes such as GDI classes or controls are in this library. All
77 wxWidgets GUI applications must link against this library, only console mode
78 applications don't.
79
80 Requires @ref page_libs_wxbase.
81
82
83 @section page_libs_wxaui wxAui
84
85 This contains the Advanced User Interface docking library.
86
87 Requires @ref page_libs_wxadv, @ref page_libs_wxhtml, @ref page_libs_wxxml,
88 @ref page_libs_wxcore, @ref page_libs_wxbase.
89
90
91 @section page_libs_wxnet wxNet
92
93 Classes for network access:
94
95 @li wxSocket classes (wxSocketClient, wxSocketServer and related classes)
96 @li wxSocketOutputStream and wxSocketInputStream
97 @li sockets-based IPC classes (wxTCPServer, wxTCPClient and wxTCPConnection)
98 @li wxURL
99 @li wxInternetFSHandler (a wxFileSystem handler)
100
101 Requires @ref page_libs_wxbase.
102
103
104 @section page_libs_wxpropgrid wxPropertyGrid
105
106 This contains the wxPropertyGrid control.
107
108 Requires @ref page_libs_wxadv, @ref page_libs_wxcore, @ref page_libs_wxbase.
109
110
111 @section page_libs_wxrichtext wxRichText
112
113 This contains generic rich text control functionality.
114
115 Requires @ref page_libs_wxadv, @ref page_libs_wxhtml, @ref page_libs_wxxml,
116 @ref page_libs_wxcore, @ref page_libs_wxbase.
117
118
119 @section page_libs_wxxml wxXML
120
121 This library contains simple classes for parsing XML documents.
122
123 Requires @ref page_libs_wxbase.
124
125
126 @section page_libs_wxadv wxAdvanced
127
128 Advanced or rarely used GUI classes:
129
130 @li wxCalendarCtrl
131 @li wxGrid classes
132 @li wxJoystick
133 @li wxLayoutAlgorithm
134 @li wxSplashScreen
135 @li wxTaskBarIcon
136 @li wxSound
137 @li wxWizard
138 @li wxSashLayoutWindow
139 @li wxSashWindow
140 @li ...others
141
142 Requires @ref page_libs_wxcore and @ref page_libs_wxbase.
143
144
145 @section page_libs_wxmedia wxMedia
146
147 Miscellaneous classes related to multimedia. Currently this library only
148 contains wxMediaCtrl but more classes will be added in the future.
149
150 Requires @ref page_libs_wxcore and @ref page_libs_wxbase.
151
152
153 @section page_libs_wxgl wxGL
154
155 This library contains wxGLCanvas class for integrating OpenGL library with
156 wxWidgets. Unlike all others, this library is @b not part of the monolithic
157 library, it is always built as separate library.
158
159 Requires @ref page_libs_wxcore and @ref page_libs_wxbase.
160
161
162 @section page_libs_wxhtml wxHTML
163
164 Simple HTML renderer and other @ref overview_html are contained in this
165 library, as well as wxHtmlHelpController, wxBestHelpController and
166 wxHtmlListBox.
167
168 Requires @ref page_libs_wxcore and @ref page_libs_wxbase.
169
170
171 @section page_libs_wxqa wxQA
172
173 This is the library containing extra classes for quality assurance. Currently
174 it only contains wxDebugReport and related classes, but more will be added to
175 it in the future.
176
177 Requires @ref page_libs_wxxml, @ref page_libs_wxcore, @ref page_libs_wxbase.
178
179
180 @section page_libs_wxxrc wxXRC
181
182 This library contains wxXmlResource class that provides access to XML resource
183 files in XRC format.
184
185 Requires @ref page_libs_wxadv, @ref page_libs_wxhtml, @ref page_libs_wxxml,
186 @ref page_libs_wxcore, @ref page_libs_wxbase.
187
188
189 @section page_libs_wxstc wxSTC
190
191 STC (Styled Text Control) is a wrapper around Scintilla, a syntax-highlighting
192 text editor. See <http://www.scintilla.org/> for more info about Scintilla.
193
194 Requires @ref page_libs_wxcore, @ref page_libs_wxbase.
195
196 */
197