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