]>
Commit | Line | Data |
---|---|---|
1 | \chapter{Libraries list}\label{librarieslist} | |
2 | \setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}% | |
3 | \setfooter{\thepage}{}{}{}{}{\thepage}% | |
4 | ||
5 | wxWidgets can be built either as a single large | |
6 | library (this is called the {\it monolithic build}) or as several smaller | |
7 | libraries ({\it multilib build}). Multilib build is the default. | |
8 | ||
9 | wxWidgets library is divided into libraries briefly described below. This | |
10 | diagram show dependencies between them: | |
11 | ||
12 | \begin{center} | |
13 | \image{}{libs.gif} | |
14 | \end{center} | |
15 | ||
16 | Please note that arrows indicate the "depends from" relation and that | |
17 | all blue boxes depend from wxBase library (i.e. they are non-GUI libraries), and | |
18 | all green boxes depend from wxCore library (i.e. they are GUI libraries). | |
19 | ||
20 | {\large {\bf wxBase}} | |
21 | ||
22 | Every wxWidgets application must link against this library. It contains | |
23 | mandatory classes that any wxWidgets code depends on (e.g. | |
24 | \helpref{wxString}{wxstring}) and portability classes that abstract | |
25 | differences between platforms. wxBase can be used to develop console mode | |
26 | applications, it does not require any GUI libraries or running X Window System | |
27 | on Unix. | |
28 | ||
29 | {\large {\bf wxCore}} | |
30 | ||
31 | Basic GUI classes such as GDI classes or controls are in this library. All | |
32 | wxWidgets GUI applications must link against this library, only console mode | |
33 | applications don't. | |
34 | ||
35 | Requires wxBase. | |
36 | ||
37 | {\large {\bf wxAui}} | |
38 | ||
39 | This contains the Advanced User Interface docking library. | |
40 | ||
41 | Requires wxAdvanced, wxHTML, wxXML, wxCore, wxBase. | |
42 | ||
43 | {\large {\bf wxNet}} | |
44 | ||
45 | Classes for network access: | |
46 | ||
47 | \begin{itemize} | |
48 | \item{ wxSocket classes (\helpref{wxSocketClient}{wxsocketclient}, | |
49 | \helpref{wxSocketServer}{wxsocketserver} and related classes) } | |
50 | \item{ \helpref{wxSocketOutputStream}{wxsocketoutputstream} and | |
51 | \helpref{wxSocketInputStream}{wxsocketinputstream} } | |
52 | \item{ sockets-based IPC classes (\helpref{wxTCPServer}{wxddeserver}, | |
53 | \helpref{wxTCPClient}{wxddeclient} and | |
54 | \helpref{wxTCPConnection}{wxddeconnection}) } | |
55 | \item{ \helpref{wxURL}{wxurl} } | |
56 | \item{ wxInternetFSHandler (a \helpref{wxFileSystem handler}{fs}) } | |
57 | \end{itemize} | |
58 | ||
59 | Requires wxBase. | |
60 | ||
61 | {\large {\bf wxRichText}} | |
62 | ||
63 | This contains generic rich text control functionality. | |
64 | ||
65 | Requires wxAdvanced, wxHTML, wxXML, wxCore, wxBase. | |
66 | ||
67 | {\large {\bf wxXML}} | |
68 | ||
69 | This library contains simple classes for parsing XML documents. | |
70 | ||
71 | Requires wxBase. | |
72 | ||
73 | {\large {\bf wxAdvanced}} | |
74 | ||
75 | Advanced or rarely used GUI classes: | |
76 | ||
77 | \begin{itemize}\itemsep=0pt | |
78 | \item{ \helpref{wxBufferedDC}{wxbuffereddc} } | |
79 | \item{ \helpref{wxCalendarCtrl}{wxcalendarctrl} } | |
80 | \item{ \helpref{wxGrid classes}{gridoverview} } | |
81 | \item{ \helpref{wxJoystick}{wxjoystick} } | |
82 | \item{ \helpref{wxLayoutAlgorithm}{wxlayoutalgorithm} } | |
83 | \item{ \helpref{wxSplashScreen}{wxsplashscreen} } | |
84 | \item{ \helpref{wxTaskBarIcon}{wxtaskbaricon} } | |
85 | \item{ \helpref{wxSound}{wxsound} } | |
86 | \item{ \helpref{wxWizard}{wxwizard} } | |
87 | \item{ \helpref{wxSashLayoutWindow}{wxsashlayoutwindow} } | |
88 | \item{ \helpref{wxSashWindow}{wxsashwindow} } | |
89 | \item{ ...others } | |
90 | \end{itemize} | |
91 | ||
92 | Requires wxCore and wxBase. | |
93 | ||
94 | {\large {\bf wxMedia}} | |
95 | ||
96 | Miscellaneous classes related to multimedia. Currently this library only | |
97 | contains \helpref{wxMediaCtrl}{wxmediactrl} but more classes will be added in | |
98 | the future. | |
99 | ||
100 | Requires wxCore and wxBase. | |
101 | ||
102 | {\large {\bf wxGL}} | |
103 | ||
104 | This library contains \helpref{wxGLCanvas}{wxglcanvas} class for integrating | |
105 | OpenGL library with wxWidgets. Unlike all others, this library is {\em not} | |
106 | part of the monolithic library, it is always built as separate library. | |
107 | ||
108 | Requires wxCore and wxBase. | |
109 | ||
110 | {\large {\bf wxHTML}} | |
111 | ||
112 | Simple HTML renderer and other \helpref{HTML rendering classes}{wxhtml} are | |
113 | contained in this library, as well as | |
114 | \helpref{wxHtmlHelpController}{wxhtmlhelpcontroller}, | |
115 | \helpref{wxBestHelpController}{wxhelpcontroller} and | |
116 | \helpref{wxHtmlListBox}{wxhtmllistbox}. | |
117 | ||
118 | Requires wxCore and wxBase. | |
119 | ||
120 | {\large {\bf wxODBC}} | |
121 | ||
122 | \helpref{Database classes}{odbcoverview}. Requires wxBase. | |
123 | ||
124 | {\large {\bf wxQA}} | |
125 | ||
126 | This is the library containing extra classes for quality assurance. Currently | |
127 | it only contains \helpref{wxDebugReport}{wxdebugreport} and related classes, | |
128 | but more will be added to it in the future. | |
129 | ||
130 | Requires wxXML, wxCore, wxBase. | |
131 | ||
132 | {\large {\bf wxDbGrid}} | |
133 | ||
134 | \helpref{wxDbGridTableBase}{wxdbgridtablebase} class which combines | |
135 | \helpref{wxGrid}{wxgrid} and \helpref{wxDbTable}{wxdbtable}. | |
136 | ||
137 | Requires wxODBC, wxAdvanced, wxCore, wxBase. | |
138 | ||
139 | {\large {\bf wxXRC}} | |
140 | ||
141 | This library contains \helpref{wxXmlResource}{wxxmlresource} class that | |
142 | provides access to XML resource files in XRC format | |
143 | ||
144 | Requires wxAdvanced, wxHTML, wxXML, wxCore, wxBase. | |
145 | ||
146 | {\large {\bf wxSTC}} | |
147 | ||
148 | STC (Styled Text Control) is a wrapper around Scintilla, a syntax-highlighting text editor. | |
149 | ||
150 | Requires wxCore, wxBase. |