wxWidgets/docs/doxygen/mainpages/libs.h
Vadim Zeitlin 3ffa651a34 Move wxAdv library contents into wxCore
This basically removes the "adv" library, even though it's still
preserved for compatibility with user make/project files referring to
it.

It is done because the distinction between "adv" and "core" was never
really clear (e.g. why wxTreeCtrl was in core but wxTreeListCtrl in
adv?) and it prevented some core classes from using adv ones.
2018-08-27 21:13:04 +02:00

199 lines
6.2 KiB
C

/////////////////////////////////////////////////////////////////////////////
// Name: libs.h
// Purpose: Libraries page of the Doxygen manual
// Author: wxWidgets team
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
/**
@page page_libs Library List
@tableofcontents
wxWidgets can be built either as a single large library (this is called a
<em>monolithic build</em>) or as several smaller libraries
(<em>multilib build</em>). Multilib build is the default.
wxWidgets library is divided into libraries briefly described below. This
diagram shows the dependencies between them:
@dot
digraph Dependencies
{
node [shape = ellipse, fontname = "Courier", fontsize = 10, style = filled];
wxBase [URL = "\ref page_libs_wxbase"];
wxCore [fillcolor = deepskyblue, URL = "\ref page_libs_wxcore"];
wxNet [fillcolor = deepskyblue, URL = "\ref page_libs_wxnet"];
wxXML [fillcolor = deepskyblue, URL = "\ref page_libs_wxxml"];
wxAUI [fillcolor = green, URL = "\ref page_libs_wxaui"];
wxGL [fillcolor = green, URL = "\ref page_libs_wxgl"];
wxHTML [fillcolor = green, URL = "\ref page_libs_wxhtml"];
wxMedia [fillcolor = green, URL = "\ref page_libs_wxmedia"];
wxPropertyGrid [fillcolor = green, URL = "\ref page_libs_wxpropgrid"];
wxQA [fillcolor = green, URL = "\ref page_libs_wxqa"];
wxRibbon [fillcolor = green, URL = "\ref page_libs_wxribbon"];
wxRichText [fillcolor = green, URL = "\ref page_libs_wxrichtext"];
wxSTC [fillcolor = green, URL = "\ref page_libs_wxstc"];
wxXRC [fillcolor = green, URL = "\ref page_libs_wxxrc"];
wxWebView [fillcolor = green, URL = "\ref page_libs_wxwebview"];
wxCore -> wxBase;
wxNet -> wxBase;
wxXML -> wxBase;
wxAUI -> wxCore; wxAUI -> wxHTML;
wxGL -> wxCore;
wxHTML -> wxCore;
wxMedia -> wxCore;
wxPropertyGrid -> wxCore;
wxQA -> wxCore; wxQA -> wxXML;
wxRibbon -> wxCore;
wxRichText -> wxCore; wxRichText -> wxHTML; wxRichText -> wxXML;
wxSTC -> wxCore;
wxXRC -> wxCore; wxXRC -> wxHTML; wxXRC -> wxXML;
wxWebView -> wxCore;
}
@enddot
Please note that arrows indicate the "depends from" relation and that all blue
libraries depend on the @ref page_libs_wxbase library (i.e. they are non-GUI
libraries), and all green libraries depend on the @ref page_libs_wxcore library
(i.e. they are GUI libraries).
@note Until wxWidgets 3.1.2 some core GUI classes were in a separate wxAdvanced
library, but this library was merged into wxCore and, while it's still
preserved as an empty library for compatibility, should be never used any
longer and will disappear completely in the future.
@section page_libs_wxaui wxAui
This contains the Advanced User Interface docking library.
Requires @ref page_libs_wxhtml, @ref page_libs_wxxml,
@ref page_libs_wxcore, @ref page_libs_wxbase.
@section page_libs_wxbase wxBase
Every wxWidgets application must link against this library. It contains
mandatory classes that any wxWidgets code depends on (e.g. wxString) and
portability classes that abstract differences between platforms. wxBase can be
used to develop console mode applications, it does not require any GUI
libraries or running X Window System on Unix.
@section page_libs_wxcore wxCore
Basic GUI classes such as GDI classes or controls are in this library. All
wxWidgets GUI applications must link against this library, only console mode
applications don't.
Requires @ref page_libs_wxbase.
@section page_libs_wxgl wxGL
This library contains wxGLCanvas class for integrating OpenGL library with
wxWidgets. Unlike all others, this library is @b not part of the monolithic
library, it is always built as separate library.
Requires @ref page_libs_wxcore and @ref page_libs_wxbase.
@section page_libs_wxhtml wxHTML
Simple HTML renderer and other @ref overview_html are contained in this
library, as well as wxHtmlHelpController, wxBestHelpController and
wxHtmlListBox.
Requires @ref page_libs_wxcore and @ref page_libs_wxbase.
@section page_libs_wxmedia wxMedia
Miscellaneous classes related to multimedia. Currently this library only
contains wxMediaCtrl but more classes will be added in the future.
Requires @ref page_libs_wxcore and @ref page_libs_wxbase.
@section page_libs_wxnet wxNet
Classes for network access:
@li wxSocket classes (wxSocketClient, wxSocketServer and related classes)
@li wxSocketOutputStream and wxSocketInputStream
@li sockets-based IPC classes (wxTCPServer, wxTCPClient and wxTCPConnection)
@li wxURL
@li wxInternetFSHandler (a wxFileSystem handler)
Requires @ref page_libs_wxbase.
@section page_libs_wxpropgrid wxPropertyGrid
This contains the wxPropertyGrid control.
Requires @ref page_libs_wxcore, @ref page_libs_wxbase.
@section page_libs_wxqa wxQA
This is the library containing extra classes for quality assurance. Currently
it only contains wxDebugReport and related classes, but more will be added to
it in the future.
Requires @ref page_libs_wxxml, @ref page_libs_wxcore, @ref page_libs_wxbase.
@section page_libs_wxribbon wxRibbon
This contains the Ribbon User Interface components library.
Requires @ref page_libs_wxcore, @ref page_libs_wxbase.
@section page_libs_wxrichtext wxRichText
This contains generic rich text control functionality.
Requires @ref page_libs_wxhtml, @ref page_libs_wxxml,
@ref page_libs_wxcore, @ref page_libs_wxbase.
@section page_libs_wxstc wxSTC
STC (Styled Text Control) is a wrapper around Scintilla, a syntax-highlighting
text editor. See <http://www.scintilla.org/> for more info about Scintilla.
Requires @ref page_libs_wxcore, @ref page_libs_wxbase.
@section page_libs_wxwebview wxWebView
The wxWebView library contains the wxWebView control and its associated classes.
Requires @ref page_libs_wxcore, @ref page_libs_wxbase.
@section page_libs_wxxml wxXML
This library contains simple classes for parsing XML documents.
Requires @ref page_libs_wxbase.
@section page_libs_wxxrc wxXRC
This library contains wxXmlResource class that provides access to XML resource
files in XRC format.
Requires @ref page_libs_wxhtml, @ref page_libs_wxxml,
@ref page_libs_wxcore, @ref page_libs_wxbase.
*/