Merge branch 'master' into web-request
Merge with the latest master in preparation for merging into master. Rebake to resolve conflicts in generated files.
This commit is contained in:
@@ -126,7 +126,7 @@ Controls that are not static can have wxValidator associated with them.
|
||||
mode
|
||||
@li wxNotebook: A notebook class
|
||||
@li wxOwnerDrawnComboBox: A combobox with owner-drawn list items
|
||||
@li wxPropertyGrid: A complex control to display hierachical, editable information
|
||||
@li wxPropertyGrid: A complex control to display hierarchical, editable information
|
||||
@li wxRadioBox: A group of radio buttons
|
||||
@li wxRadioButton: A round button to be used with others in a mutually
|
||||
exclusive way
|
||||
@@ -667,6 +667,7 @@ Related overview: @ref overview_file
|
||||
@li wxFile: Low-level file input/output class.
|
||||
@li wxFFile: Another low-level file input/output class.
|
||||
@li wxTempFile: Class to safely replace an existing file
|
||||
@li wxTempFFile: Another class to safely replace an existing file
|
||||
@li wxTextFile: Class for working with text files as with arrays of lines
|
||||
@li wxStandardPaths: Paths for standard directories
|
||||
@li wxPathList: A class to help search multiple paths
|
||||
@@ -702,6 +703,7 @@ Related overview: @ref overview_stream
|
||||
@li wxFFileInputStream: Another file input stream class
|
||||
@li wxFFileOutputStream: Another file output stream class
|
||||
@li wxTempFileOutputStream: Stream to safely replace an existing file
|
||||
@li wxTempFFileOutputStream: Another stream to safely replace an existing file
|
||||
@li wxStringInputStream: String input stream class
|
||||
@li wxStringOutputStream: String output stream class
|
||||
@li wxLZMAInputStream: LZMA decompression stream class
|
||||
|
@@ -39,9 +39,9 @@ Notice that for compatibility reasons, this symbol is defined for console
|
||||
applications under Windows as well, but it should only be used in the GUI code
|
||||
while <tt>__WINDOWS__</tt> should be used for the platform tests.}
|
||||
@itemdef{__WXOSX__, OS X GUI using any Apple widget framework (AppKit or UIKit)}
|
||||
@itemdef{__WXOSX_IPHONE__, OS X iPhone (UIKit)}
|
||||
@itemdef{__WXOSX_COCOA__, OS X using Cocoa (AppKit)}
|
||||
@itemdef{__WXOSX_MAC__, OS X (Cocoa)}
|
||||
@itemdef{__WXOSX_IPHONE__, iPhone (UIKit)}
|
||||
@itemdef{__WXOSX_COCOA__, macOS using Cocoa (AppKit)}
|
||||
@itemdef{__WXOSX_MAC__, macOS (Cocoa)}
|
||||
@itemdef{__WXPM__, OS/2 native Presentation Manager (not used any longer).}
|
||||
@itemdef{__WXSTUBS__, Stubbed version ('template' wxWin implementation)}
|
||||
@itemdef{__WXXT__, Xt; mutually exclusive with WX_MOTIF, not implemented in wxWidgets 2.x}
|
||||
@@ -59,7 +59,7 @@ versions: Cocoa for the desktop and a very early iPhone port. To summarize:
|
||||
<tt>__WXOSX_MAC__</tt>.
|
||||
@li If you want to test for wxOSX on the iPhone, use
|
||||
<tt>__WXOSX_IPHONE__</tt>.
|
||||
@li If you want to test for any port under OS X, including, for
|
||||
@li If you want to test for any port under macOS, including, for
|
||||
example, wxGTK and also wxBase, use <tt>__DARWIN__</tt> (see below).
|
||||
|
||||
The convention is to use the <tt>__WX</tt> prefix for these
|
||||
@@ -120,7 +120,7 @@ compiler used.
|
||||
|
||||
@beginDefList
|
||||
@itemdef{__BORLANDC__, Borland C++. The value of the macro corresponds
|
||||
to the compiler version: 500 is 5.0.}
|
||||
to the compiler version: 500 is 5.0 (not used any more).}
|
||||
@itemdef{__DIGITALMARS__, Digital Mars (not used any more).}
|
||||
@itemdef{__GNUG__, Gnu C++ on any platform, see also wxCHECK_GCC_VERSION}
|
||||
@itemdef{__GNUWIN32__, Gnu-Win32 compiler, see also wxCHECK_W32API_VERSION}
|
||||
@@ -171,6 +171,8 @@ Currently the following symbols exist:
|
||||
wxBitmapToggleButton class is available in addition to wxToggleButton.}
|
||||
@itemdef{wxHAS_CONFIG_TEMPLATE_RW, Defined if the currently used compiler
|
||||
supports template Read() and Write() methods in wxConfig.}
|
||||
@itemdef{wxHAS_MEMBER_DEFAULT, Defined if the currently used compiler supports
|
||||
C++11 @c =default.}
|
||||
@itemdef{wxHAS_LARGE_FILES, Defined if wxFile supports files more than 4GB in
|
||||
size (notice that you must include @c wx/filefn.h before testing for this
|
||||
symbol).}
|
||||
@@ -185,7 +187,11 @@ Currently the following symbols exist:
|
||||
decide whether some function should be overloaded for both
|
||||
<code>long</code> and <code>long long</code> types.}
|
||||
@itemdef{wxHAS_MULTIPLE_FILEDLG_FILTERS, Defined if wxFileDialog supports multiple ('|'-separated) filters.}
|
||||
@itemdef{wxHAS_NATIVE_ANIMATIONCTRL, Defined if native wxAnimationCtrl class is being used (this symbol only exists in wxWidgets 3.1.4 and later).}
|
||||
@itemdef{wxHAS_NATIVE_DATAVIEWCTRL, Defined if native wxDataViewCtrl class is being used (this symbol only exists in wxWidgets 3.1.4 and later).}
|
||||
@itemdef{wxHAS_NATIVE_WINDOW, Defined if wxNativeWindow class is available.}
|
||||
@itemdef{wxHAS_NOEXCEPT, Defined if the currently used compiler supports C++11 @c noexcept. @c wxNOEXCEPT is defined as this keyword in this case, and as nothing otherwise.}
|
||||
@itemdef{wxHAS_NULLPTR_T, Defined if the currently used compiler supports C++11 @c nullptr.}
|
||||
@itemdef{wxHAS_IMAGES_IN_RESOURCES, Defined if <a href="http://en.wikipedia.org/wiki/Resource_(Windows)">
|
||||
Windows resource files</a> or OS/2 resource files are available on the current platform.}
|
||||
@itemdef{wxHAS_POWER_EVENTS, Defined if wxPowerEvent are ever generated on the current platform.}
|
||||
@@ -208,16 +214,47 @@ Currently the following symbols exist:
|
||||
|
||||
|
||||
|
||||
@section page_cppconst_msvc_setup_h Library Selection for MSVC
|
||||
@section page_cppconst_msvc_setup_h MSVC-specific Symbols
|
||||
|
||||
Microsoft Visual C++ users may use the special @c wx/setup.h file for this
|
||||
compiler in @c include/msvc subdirectory. This file implicitly links in all the
|
||||
wxWidgets libraries using MSVC-specific pragmas which usually is much more
|
||||
convenient than manually specifying the libraries list in all of the project
|
||||
configurations. However sometimes linking with all the libraries is not
|
||||
desirable, for example because some of them were not built and this is where
|
||||
the symbols in this section can be helpful: defining them allows to not link
|
||||
with the corresponding library. The following symbols are honoured:
|
||||
configurations.
|
||||
|
||||
By default, the pragmas used in this file to actually link with wxWidgets
|
||||
libraries suppose that the libraries are located in @c vc_lib or @c vc_dll
|
||||
directory which is used by default. However when using multiple MSVC versions,
|
||||
or when using the @ref plat_msw_binaries "official binaries", the libraries are
|
||||
in a directory containing the compiler version number, e.g. @c vc140_dll. To
|
||||
make linking work in this case, you must predefine @c wxMSVC_VERSION as @c
|
||||
vc140 <em>before</em> include @c wx/setup.h file, i.e. typically in the MSVS
|
||||
project options. Alternatively, you can predefine @c wxMSVC_VERSION_AUTO symbol
|
||||
(without any value), which means that the appropriate compiler version should
|
||||
be used automatically, e.g. "vc100" for VC 10 (MSVS 2010), "vc140" for VC 14
|
||||
(MSVS 2015) etc. Additionally, VC 14 is a special case as it has 3 minor
|
||||
versions: VC 14.0, 14.1 and 14.2, corresponding to MSVS 2015, 2017 and 2019;
|
||||
that are ABI-compatible with each other. Due to this, it can also be useful to
|
||||
reuse the single build of wxWidgets with all versions of the compiler and this
|
||||
is supported if @c wxMSVC_VERSION_ABI_COMPAT is defined: the compiler prefix
|
||||
"vc14x" is used in this case.
|
||||
|
||||
If the makefiles have been used to build the libraries from source and the @c CFG
|
||||
variable has been set to specify a different output path for that particular
|
||||
configuration of build then the @c wxCFG preprocessor symbol should be set in
|
||||
the project that uses wxWidgets to the same value as the @c CFG variable in
|
||||
order for the correct @c wx/setup.h file to automatically be included for that
|
||||
configuration.
|
||||
|
||||
|
||||
@subsection page_cppconst_msvc_setup_h_no_libs Library Selection for MSVC
|
||||
|
||||
As explained above, MSVC users don't need to explicitly specify wxWidgets
|
||||
libraries to link with, as this is done by @c wx/setup.h. However sometimes
|
||||
linking with all the libraries, as is done by default, is not desirable, for
|
||||
example because some of them were not built and this is where the symbols in
|
||||
this section can be helpful: defining them allows to not link with the
|
||||
corresponding library. The following symbols are honoured:
|
||||
|
||||
- wxNO_AUI_LIB
|
||||
- wxNO_HTML_LIB
|
||||
@@ -238,13 +275,6 @@ with the corresponding library. The following symbols are honoured:
|
||||
Notice that the base library is always included and the core is always included
|
||||
for the GUI applications (i.e. those which don't define @c wxUSE_GUI as 0).
|
||||
|
||||
If the makefiles have been used to build the libraries from source and the @c CFG
|
||||
variable has been set to specify a different output path for that particular
|
||||
configuration of build then the @c wxCFG preprocessor symbol should be set in
|
||||
the project that uses wxWidgets to the same value as the @c CFG variable in
|
||||
order for the correct @c wx/setup.h file to automatically be included for that
|
||||
configuration.
|
||||
|
||||
|
||||
@section page_cppconst_compatibility Compatibility Macros
|
||||
|
||||
@@ -345,6 +375,11 @@ more details.
|
||||
set to 1 for compatibility reasons as @c -DwxNO_UNSAFE_WXSTRING_CONV
|
||||
can be used only compiling the application code, without rebuilding the
|
||||
library. Support for this option appeared in wxWidgets 3.1.1.}
|
||||
@itemdef{wxNO_IMPLICIT_WXSTRING_ENCODING,
|
||||
this symbol is not defined by wxWidgets itself, but can be defined by
|
||||
the applications using the library to disable implicit
|
||||
conversions from and to <tt>const char*</tt> in wxString class.
|
||||
Support for this option appeared in wxWidgets 3.1.4.}
|
||||
@itemdef{WXMAKINGDLL_XXX,
|
||||
used internally and defined when building the
|
||||
library @c XXX as a DLL; when a monolithic wxWidgets build is used only a
|
||||
|
@@ -29,7 +29,7 @@ identifiers are all in the range between @c wxID_LOWEST and
|
||||
@c wxID_HIGHEST and, accordingly, the user code should avoid defining its
|
||||
own constants in this range (e.g. by using wxNewId()).
|
||||
|
||||
Refer to @ref page_stockitems "the list of stock items" for the subset of standard IDs
|
||||
Refer to @ref page_stockitems "the list of stock items" for the subset of standard IDs
|
||||
which are stock IDs as well.
|
||||
|
||||
*/
|
||||
|
@@ -35,11 +35,11 @@ library:
|
||||
@itemdef{wxUSE_STD_IOSTREAM, Standard C++ classes are used instead of or in
|
||||
addition to wx stream classes.}
|
||||
@itemdef{wxUSE_UNICODE, Compiled with Unicode support (default in wxWidgets
|
||||
3.0, non-Unicode build will be deprecated in the future).}
|
||||
3.0, non-Unicode build is deprecated and will be removed in the future).}
|
||||
@itemdef{wxUSE_UNICODE_WCHAR, wxString uses wchar_t buffer for internal storage
|
||||
(default under MSW).}
|
||||
@itemdef{wxUSE_UNICODE_UTF8, wxString uses UTF-8 for internal storage (default
|
||||
under Unix and Mac systems).}
|
||||
(default).}
|
||||
@itemdef{wxUSE_UNICODE_UTF8, wxString uses UTF-8 for internal storage (mostly
|
||||
useful for wxGTK where UTF-8 is used by the underlying toolkit).}
|
||||
@itemdef{wxUSE_UTF8_LOCALE_ONLY, Library supports running only under UTF-8 (and
|
||||
C) locale. This eliminates the code necessary for conversions from the
|
||||
other locales and reduces the library size; useful for embedded systems.}
|
||||
@@ -146,7 +146,6 @@ library:
|
||||
@itemdef{wxUSE_IMAGE, Use wxImage and related classes.}
|
||||
@itemdef{wxUSE_IMAGLIST, Use wxImageList class.}
|
||||
@itemdef{wxUSE_INTL, Use wxLocale and related classes.}
|
||||
@itemdef{wxUSE_IOSTREAMH, Use header "iostream.h" instead of "iostream".}
|
||||
@itemdef{wxUSE_IPC, Use interprocess communication classes.}
|
||||
@itemdef{wxUSE_IPV6, Use experimental wxIPV6address and related classes.}
|
||||
@itemdef{wxUSE_JOYSTICK, Use wxJoystick class.}
|
||||
@@ -170,12 +169,14 @@ library:
|
||||
@itemdef{wxUSE_MDI_ARCHITECTURE, Use MDI-based document-view classes.}
|
||||
@itemdef{wxUSE_MEDIACTRL, Use wxMediaCtrl.}
|
||||
@itemdef{wxUSE_MEMORY_TRACING, Use wxWidgets memory leak detection, not recommended if using another memory debugging tool.}
|
||||
@itemdef{wxUSE_MENUS, Use wxMenu and related classes.}
|
||||
@itemdef{wxUSE_MENUS, Use wxMenu and wxMenuItem.}
|
||||
@itemdef{wxUSE_MENUBAR, Use wxMenubar.}
|
||||
@itemdef{wxUSE_METAFILE, Use wxMetaFile and related classes.}
|
||||
@itemdef{wxUSE_MIMETYPE, Use wxFileType class.}
|
||||
@itemdef{wxUSE_MINIFRAME, Use wxMiniFrame class.}
|
||||
@itemdef{wxUSE_MOUSEWHEEL, Support mouse wheel events.}
|
||||
@itemdef{wxUSE_MSGDLG, Use wxMessageDialog class and wxMessageBox function.}
|
||||
@itemdef{wxUSE_NATIVE_DATAVIEWCTRL, Use native wxDataViewCtrl class (this option is new since wxWidgets 3.1.4).}
|
||||
@itemdef{wxUSE_NATIVE_STATUSBAR, Use native wxStatusBar class.}
|
||||
@itemdef{wxUSE_NOTEBOOK, Use wxNotebook and related classes.}
|
||||
@itemdef{wxUSE_NUMBERDLG, Use wxNumberEntryDialog class.}
|
||||
@@ -319,12 +320,13 @@ library:
|
||||
@itemdef{wxUSE_ACCESSIBILITY, Enable accessibility support}
|
||||
@itemdef{wxUSE_ACTIVEX, Use wxActiveXContainer and related classes.}
|
||||
@itemdef{wxUSE_COMBOCTRL_POPUP_ANIMATION, See wx/msw/combo.h file.}
|
||||
@itemdef{wxUSE_COMCTL32_SAFELY, See src/msw/treectrl.cpp file.}
|
||||
@itemdef{wxUSE_COMMON_DIALOGS, Enable use of windows common dialogs from header commdlg.h; example PRINTDLG.}
|
||||
@itemdef{wxUSE_CRASHREPORT, Use wxCrashReport class.}
|
||||
@itemdef{wxUSE_DATEPICKCTRL_GENERIC, Use generic wxDatePickerCtrl implementation in addition to the native one.}
|
||||
@itemdef{wxUSE_DC_CACHEING, cache temporary wxDC objects.}
|
||||
@itemdef{wxUSE_DDE_FOR_IPC, See wx/ipc.h file.}
|
||||
@itemdef{wxUSE_DPI_AWARE_MANIFEST, Set the DPI awareness of the application
|
||||
(0=none, 1=system, 2=per-monitor. Used by CMake and when wxUSE_RC_MANIFEST is enabled.}
|
||||
@itemdef{wxUSE_ENH_METAFILE, Use wxEnhMetaFile.}
|
||||
@itemdef{wxUSE_HOTKEY, Use wxWindow::RegisterHotKey() and wxWindow::UnregisterHotKey}
|
||||
@itemdef{wxUSE_INKEDIT, Use InkEdit library. Related to Tablet PCs.}
|
||||
@@ -349,6 +351,9 @@ compilers. See also wxUSE_NO_MANIFEST.}
|
||||
@itemdef{wxUSE_WIN_METAFILES_ALWAYS, Use wxMetaFile even when wxUSE_ENH_METAFILE=1.}
|
||||
@itemdef{wxUSE_WINRT, Enable WinRT support.}
|
||||
@itemdef{wxUSE_WXDIB, Use wxDIB class.}
|
||||
@itemdef{wxUSE_WINSOCK2, Include @c <winsock2.h> instead of @c <winsock.h>.
|
||||
Turned on automatically if wxUSE_IPV6 is on (this option is new since
|
||||
wxWidgets 3.1.3).}
|
||||
@endDefList
|
||||
|
||||
|
||||
|
@@ -11,7 +11,7 @@
|
||||
|
||||
@section section_copyright wxWidgets Copyrights and Licenses
|
||||
|
||||
Copyright (c) 1992-2018 Julian Smart, Vadim Zeitlin, Stefan Csomor, Robert
|
||||
Copyright (c) 1992-2020 Julian Smart, Vadim Zeitlin, Stefan Csomor, Robert
|
||||
Roebling, and other members of the wxWidgets team, please see the
|
||||
acknowledgements section below.
|
||||
|
||||
@@ -103,7 +103,7 @@ without express or implied warranty.
|
||||
@verbinclude "lgpl.txt"
|
||||
|
||||
@page page_copyright_xserver The Open Group and DEC License
|
||||
|
||||
|
||||
@verbinclude "xserver.txt"
|
||||
|
||||
*/
|
||||
|
@@ -28,10 +28,6 @@ following section before any other includes:
|
||||
// For compilers that support precompilation, includes "wx.h".
|
||||
#include <wx/wxprec.h>
|
||||
|
||||
#ifdef __BORLANDC__
|
||||
# pragma hdrstop
|
||||
#endif
|
||||
|
||||
#ifndef WX_PRECOMP
|
||||
// Include your minimal set of headers here, or wx.h
|
||||
# include <wx/wx.h>
|
||||
@@ -44,8 +40,8 @@ The file @c "wx/wxprec.h" includes @c "wx/wx.h". Although this incantation may
|
||||
seem quirky, it is in fact the end result of a lot of experimentation, and
|
||||
several Windows compilers to use precompilation which is largely automatic for
|
||||
compilers with necessary support. Currently it is used for Visual C++
|
||||
(including embedded Visual C++), Borland C++ and newer versions of GCC. Some
|
||||
compilers might need extra work from the application developer to set the build
|
||||
(including embedded Visual C++) and newer versions of GCC. Some compilers
|
||||
might need extra work from the application developer to set the build
|
||||
environment up as necessary for the support.
|
||||
|
||||
|
||||
@@ -110,11 +106,10 @@ and this must not be changed.
|
||||
On Microsoft Windows, wxWidgets has a different set of makefiles for each
|
||||
compiler, because each compiler's @c 'make' tool is slightly different. Popular
|
||||
Windows compilers that we cater for, and the corresponding makefile extensions,
|
||||
include: Microsoft Visual C++ (.vc), Borland C++ (.bcc) and MinGW/Cygwin
|
||||
(.gcc). Makefiles are provided for the wxWidgets library itself, samples,
|
||||
demos, and utilities.
|
||||
include: Microsoft Visual C++ (.vc) and MinGW/Cygwin (.gcc). Makefiles are
|
||||
provided for the wxWidgets library itself, samples, demos, and utilities.
|
||||
|
||||
On Linux and OS X, you use the @c 'configure' command to generate the
|
||||
On Linux and macOS, you use the @c 'configure' command to generate the
|
||||
necessary makefiles. You should also use this method when building with
|
||||
MinGW/Cygwin on Windows.
|
||||
|
||||
@@ -127,7 +122,7 @@ On Windows using a compiler other than MinGW/Cygwin, you would build the
|
||||
wxWidgets library from the @c "build/msw" directory which contains the relevant
|
||||
makefiles.
|
||||
|
||||
On Windows using MinGW/Cygwin, and on Unix and OS X, you invoke
|
||||
On Windows using MinGW/Cygwin, and on Unix and macOS, you invoke
|
||||
'configure' (found in the top-level of the wxWidgets source hierarchy), from
|
||||
within a suitable empty directory for containing makefiles, object files and
|
||||
libraries.
|
||||
@@ -136,7 +131,7 @@ For details on using makefiles, configure, and project files, please see
|
||||
@c "docs/xxx/install.txt" in your distribution, where @c "xxx" is the platform
|
||||
of interest, such as @c msw, @c gtk, @c x11, @c mac.
|
||||
|
||||
All wxWidgets makefiles are generated using Bakefile <http://www.bakefile.org/>.
|
||||
All wxWidgets makefiles are generated using Bakefile <https://www.bakefile.org/>.
|
||||
wxWidgets also provides (in the @c "build/bakefiles/wxpresets" folder) the
|
||||
wxWidgets bakefile presets. These files allow you to create bakefiles for your
|
||||
own wxWidgets-based applications very easily.
|
||||
@@ -259,7 +254,7 @@ its own run-time type information system, implemented using macros.
|
||||
|
||||
@subsection page_multiplatform_cpp_precompiledheaders Precompiled Headers
|
||||
|
||||
Some compilers, such as Borland C++ and Microsoft C++, support precompiled
|
||||
Some compilers, such as Microsoft C++, support precompiled
|
||||
headers. This can save a great deal of compiling time. The recommended approach
|
||||
is to precompile @c "wx.h", using this precompiled header for compiling both
|
||||
wxWidgets itself and any wxWidgets applications. For Windows compilers, two
|
||||
|
@@ -41,8 +41,9 @@ Compared to the other similar libraries, wxWidgets is:
|
||||
3. Open source and free for use in both open source and commercial projects.
|
||||
|
||||
|
||||
wxWidgets provides a simple, easy to learn, yet very rich API. It is also
|
||||
mature and stable, and the applications written using wxWidgets 2.0
|
||||
wxWidgets provides a simple, easy to learn, yet very rich API, while also
|
||||
proposing a simple way to define application UI in the external XML files.
|
||||
It is also mature and stable, and the applications written using wxWidgets 2.0
|
||||
pre-releases almost 20 years ago can still be built today with wxWidgets 3
|
||||
almost unchanged. wxWidgets has a large, active and friendly community of
|
||||
people, including both the users and developers of the library. It is also
|
||||
@@ -59,7 +60,7 @@ paragraphs, but here are some of the benefits:
|
||||
@li Extensive documentation (almost 200,000 lines of it).
|
||||
@li Straightforward API.
|
||||
@li Simple but powerful layout system.
|
||||
@li Run-time loadable or compile-time embeddable resources.
|
||||
@li Run-time loadable or compile-time embeddable resources for UI definition.
|
||||
@li Flexible event system.
|
||||
@li All the usual and quite a few of more rare GUI controls.
|
||||
@li And also all the standard dialogs.
|
||||
@@ -79,7 +80,7 @@ wxWidgets first-tier "ports", ie implementations of wxWidgets API, are:
|
||||
|
||||
@li wxMSW: This is the native port for Microsoft Windows systems (from Windows
|
||||
XP up to Windows 10), either 32 or 64 bits. The primarily supported compilers
|
||||
are Microsoft Visual C++ (versions 2003 up to 2017 are supported, at least 2005
|
||||
are Microsoft Visual C++ (versions 2003 up to 2019 are supported, at least 2005
|
||||
is recommended) and GNU g++ (either from the traditional MinGW, TDM-GCC or
|
||||
MinGW-w64 distributions).
|
||||
|
||||
@@ -90,12 +91,12 @@ NetBSD, Solaris, AIX, ...) and require GTK+ 2.6 or later or GTK+ 3.x. The
|
||||
primary supported compiler is GNU g++.
|
||||
|
||||
@li wxOSX/Cocoa: This is the native port for Apple computers. wxOSX/Cocoa
|
||||
supports 32 or 64 bit Intel Macs running OS X 10.7 or later. The port can be
|
||||
supports 32 or 64 bit Intel Macs running macOS 10.10 or later. The port can be
|
||||
built either with g++ or clang.
|
||||
|
||||
Other platforms (e.g. iOS - with a minimum requirement of iOS 9), compilers (Borland C++
|
||||
under Windows, Sun CC, HP-UX aCC, IBM xlC or SGI mipsPro under Unix) and ports (
|
||||
wxQT, wxGTK1, wxX11, wxDFB...) are also supported but to a lesser extent.
|
||||
Other platforms (e.g. iOS - with a minimum requirement of iOS 13), compilers
|
||||
(Sun CC, HP-UX aCC, IBM xlC or SGI mipsPro under Unix) and ports (wxQT, wxGTK1,
|
||||
wxX11, wxDFB...) are also supported but to a lesser extent.
|
||||
Please see the @subpage page_port "platform details page" for more information.
|
||||
|
||||
There are no CPU speed requirements but the faster (and more) CPU(s) you have,
|
||||
@@ -110,13 +111,12 @@ configurations but at least 1GB and possibly more is required.
|
||||
|
||||
@section page_introduction_where Where to get wxWidgets and support for it
|
||||
|
||||
The download links can be found at https://www.wxwidgets.org. The primary
|
||||
download location is https://github.com/wxWidgets/wxWidgets/releases/latest.
|
||||
The download links can be found at https://www.wxwidgets.org/downloads/.
|
||||
Additionally, the latest version can always be retrieved from our version
|
||||
control system using Git (https://github.com/wxWidgets/wxWidgets).
|
||||
|
||||
wxWidgets documentation that you are reading is also available online at
|
||||
https://docs.wxwidgets.org/trunk/ and please also visit our wiki at
|
||||
The latest version of wxWidgets documentation that you are reading is available
|
||||
online at https://docs.wxwidgets.org/trunk/ and please also see
|
||||
https://wiki.wxwidgets.org/ for user-contributed contents.
|
||||
|
||||
And if you have any questions, you can join wxWidgets community using
|
||||
|
@@ -14,7 +14,7 @@
|
||||
@author Julian Smart, Vadim Zeitlin, Robin Dunn, Stefan Csomor,
|
||||
Bryan Petty, Francesco Montorsi, Robert Roebling et al
|
||||
|
||||
@date December 10, 2018
|
||||
@date July 22, 2020
|
||||
|
||||
Welcome to wxWidgets, a stable and powerful open source framework for
|
||||
developing native cross-platform GUI applications in C++!
|
||||
|
@@ -23,45 +23,36 @@ platforms and ports.
|
||||
|
||||
@section page_port_wxgtk wxGTK
|
||||
|
||||
wxGTK is a port of wxWidgets using the GTK+ library. It makes use of GTK+'s
|
||||
wxGTK is a port of wxWidgets using the GTK library. It makes use of GTK's
|
||||
native widgets wherever possible and uses wxWidgets' generic controls when
|
||||
needed. GTK+ itself has been ported to a number of systems, but so far only the
|
||||
original X11 version is supported. Support for other GTK+ backends is planned,
|
||||
such as the new DirectFB backend.
|
||||
needed.
|
||||
|
||||
All work is being done on GTK+ version 2.0 and above. Support for GTK+ 1.2 will
|
||||
be deprecated in a later release.
|
||||
You will need GTK 2.6 or higher which is available from:
|
||||
|
||||
You will need GTK+ 2.6 or higher which is available from:
|
||||
https://www.gtk.org
|
||||
|
||||
http://www.gtk.org
|
||||
|
||||
The newer version of GTK+ you use, the more native widgets and features will be
|
||||
The newer version of GTK you use, the more native widgets and features will be
|
||||
utilized. We have gone to great lengths to allow compiling wxWidgets
|
||||
applications with the latest version of GTK+, with the resulting binary working
|
||||
on systems even with a much earlier version of GTK+. You will have to ensure
|
||||
applications with the latest version of GTK, with the resulting binary working
|
||||
on systems even with a much earlier version of GTK. You will have to ensure
|
||||
that the application is launched with lazy symbol binding for that.
|
||||
|
||||
In order to configure wxWidgets to compile wxGTK you will need use the
|
||||
In order to configure wxWidgets to compile wxGTK you will need to use the
|
||||
@c \--with-gtk argument to the @c configure script. This is the default for many
|
||||
systems.
|
||||
|
||||
GTK+ 1.2 can still be used, albeit discouraged. For that you can pass
|
||||
@c \--with-gtk=1 to the @c configure script.
|
||||
|
||||
Support for GTK+ 3 is available starting with wxWidgets 2.9.4, use @c configure
|
||||
option @c \--with-gtk=3 to enable it.
|
||||
GTK 3 is the default starting with wxWidgets 3.1.4.
|
||||
Use @c configure option @c \--with-gtk=2 to use GTK 2.
|
||||
|
||||
@subpage plat_gtk_install "Build and Install Instructions"
|
||||
|
||||
@subpage plat_gtk_overview "wxWidgets on the GNOME Desktop"
|
||||
|
||||
|
||||
|
||||
@section page_port_wxosx wxOSX/Cocoa
|
||||
|
||||
wxOSX/Cocoa is the port of wxWidgets for the OS X platform. It requires
|
||||
OS X 10.7 or later and fully supports 64 bit builds.
|
||||
wxOSX/Cocoa is the port of wxWidgets for the macOS platform. It requires
|
||||
a minimum SDK 10.11, Xcode 7.2.1 or greater (runs under 10.10.5 and higher),
|
||||
and fully supports amd64 as well ARM builds and deploying under 10.10.
|
||||
|
||||
@subpage plat_osx_install "Build and Install Instructions"
|
||||
|
||||
@@ -82,16 +73,12 @@ In order to configure wxWidgets to compile wxX11 you will need to type:
|
||||
|
||||
@subpage plat_x11_install "Build Instructions"
|
||||
|
||||
There is also a page on the use of wxWidgets for embedded
|
||||
applications on the wxWidgets web site.
|
||||
|
||||
|
||||
|
||||
@section page_port_wxmotif wxMotif
|
||||
|
||||
wxMotif is a port of wxWidgets for X11 systems using Motif libraries. Motif
|
||||
libraries provide a clean and fast user interface at the expense of the beauty
|
||||
and candy of newer interfaces like GTK.
|
||||
wxMotif is a port of wxWidgets for X11 systems using Motif libraries.
|
||||
It is no longer actively maintained and by now rather obsolete.
|
||||
|
||||
@subpage plat_motif_install "Build Instructions"
|
||||
|
||||
@@ -102,9 +89,9 @@ and candy of newer interfaces like GTK.
|
||||
|
||||
wxMSW is a port of wxWidgets for the Windows platforms (Windows XP and later
|
||||
are supported). wxMSW provides native look and feel for each Windows version.
|
||||
This port can be compiled with several compilers including Microsoft Studio
|
||||
VC++ 2003 or later, Borland 5.5, MinGW32, Cygwin as well as cross-compilation
|
||||
with a Linux-hosted MinGW32 tool chain.
|
||||
This port can be compiled with several compilers including Microsoft
|
||||
VC++ 2003 or later, MinGW, Cygwin as well as cross-compilation with a
|
||||
Linux-hosted MinGW tool chain.
|
||||
|
||||
@subpage plat_msw_install "Build and Install Instructions"
|
||||
|
||||
@@ -127,45 +114,6 @@ avoid this, ensure that the icon which is meant to be used as the main
|
||||
application icon has a name preceding "wxICON" in alphabetical order.
|
||||
|
||||
|
||||
@subsection page_port_wxmsw_themedborders Themed Borders
|
||||
|
||||
Starting with wxWidgets 2.8.5, you can specify the @c wxBORDER_THEME style to
|
||||
have wxWidgets use a themed border. Using the default XP theme, this is a thin
|
||||
1-pixel blue border, with an extra 1-pixel border in the window client
|
||||
background colour (usually white) to separate the client area's scrollbars from
|
||||
the border.
|
||||
|
||||
If you don't specify a border style for a wxTextCtrl in rich edit mode,
|
||||
wxWidgets now gives the control themed borders automatically, where previously
|
||||
they would take the sunken border style. Other native controls such
|
||||
as wxTextCtrl in non-rich edit mode, and wxComboBox already paint themed
|
||||
borders where appropriate. To use themed borders on other windows, such as
|
||||
wxPanel, pass the @c wxBORDER_THEME style, or (apart from wxPanel) pass no
|
||||
border style.
|
||||
|
||||
In general, specifying @c wxBORDER_THEME will cause a border of some kind to be
|
||||
used, chosen by the platform and control class. To leave the border decision
|
||||
entirely to wxWidgets, pass @c wxBORDER_DEFAULT. This is not to be confused
|
||||
with specifying @c wxBORDER_NONE, which says that there should definitely be
|
||||
@e no border.
|
||||
|
||||
@subsubsection page_port_wxmsw_themedborders_details Internal Border Implementation
|
||||
|
||||
The way that wxMSW decides whether to apply a themed border is as follows. The
|
||||
theming code calls wxWindow::GetBorder() to obtain a border. If no border style
|
||||
has been passed to the window constructor, GetBorder() calls GetDefaultBorder()
|
||||
for this window. If wxBORDER_THEME was passed to the window constructor,
|
||||
GetBorder() calls GetDefaultBorderForControl().
|
||||
|
||||
The implementation of wxWindow::GetDefaultBorder() on wxMSW calls
|
||||
wxWindow::CanApplyThemeBorder() which is a virtual function that tells
|
||||
wxWidgets whether a control can have a theme applied explicitly (some native
|
||||
controls already paint a theme in which case we should not apply it ourselves).
|
||||
Note that wxPanel is an exception to this rule because in many cases we wish to
|
||||
create a window with no border (for example, notebook pages). So wxPanel
|
||||
overrides GetDefaultBorder() in order to call the generic
|
||||
wxWindowBase::GetDefaultBorder(), returning wxBORDER_NONE.
|
||||
|
||||
@section page_port_wxQt wxQt
|
||||
|
||||
wxQt is a port of wxWidgets using Qt libraries. It requires Qt 5 or later.
|
||||
@@ -189,13 +137,13 @@ used by wxWidgets to e.g. use toolkit-specific features.
|
||||
In such case (or when you want to e.g. write a port-specific patch) it can be
|
||||
necessary to use the underlying toolkit API directly:
|
||||
|
||||
- wxMSW port uses win32 API: see MSDN docs at http://msdn2.microsoft.com/en-us/library/ms649779.aspx
|
||||
- wxGTK port uses GTK+ and other lower-level libraries; see
|
||||
- GTK+ docs at http://library.gnome.org/devel/gtk/unstable/
|
||||
- GDK docs at http://library.gnome.org/devel/gdk/unstable/
|
||||
- GLib docs at http://library.gnome.org/devel/glib/unstable/
|
||||
- GObject docs at http://library.gnome.org/devel/gobject/unstable/
|
||||
- Pango docs at http://library.gnome.org/devel/pango/unstable/
|
||||
- wxOSX port uses the Cocoa API: see Cocoa docs at http://developer.apple.com/cocoa
|
||||
- wxMSW port uses Win32 API: see MSDN docs at https://docs.microsoft.com/en-us/windows/win32/controls/window-controls
|
||||
- wxGTK port uses GTK and other lower-level libraries; see
|
||||
- GTK docs at https://developer.gnome.org/gtk/
|
||||
- GDK docs at https://library.gnome.org/devel/gdk/
|
||||
- GLib docs at https://library.gnome.org/devel/glib/
|
||||
- GObject docs at https://library.gnome.org/devel/gobject/
|
||||
- Pango docs at https://library.gnome.org/devel/pango/
|
||||
- wxOSX port uses the Cocoa API: see Cocoa docs at https://developer.apple.com/cocoa
|
||||
|
||||
*/
|
||||
|
@@ -307,23 +307,6 @@ wxProcess::Exists().
|
||||
|
||||
@sampledir{exec}
|
||||
|
||||
@section page_samples_flash Flash Sample
|
||||
|
||||
The flash sample demonstrates embedding of Adobe Flash into a wxWidgets
|
||||
program. Currently it only works under Windows as it uses the Flash ActiveX
|
||||
control to achieve this but we hope to be able to extend it to also work under
|
||||
other platforms in the future. The sample also currently requires Microsoft
|
||||
Visual C++ compiler as it uses COM support extensions specific to this
|
||||
compiler.
|
||||
|
||||
The sample comes with 2 Flash files (SWF), showing a simple Flash animation
|
||||
which can be controlled using the "Play", "Stop" and "Back"/"Forward" buttons
|
||||
in the sample as well as a Flash form which shows how Flash and wxWidgets
|
||||
program can exchange data: calling "GetText" function without arguments returns
|
||||
the text of the text control defined inside Flash and calling "SetText" with an
|
||||
argument sets the control contents to the given string. Finally clicking on the
|
||||
button generates an event which is caught by the C++ program.
|
||||
|
||||
@section page_samples_font Font Sample
|
||||
|
||||
The font sample demonstrates wxFont,
|
||||
@@ -669,7 +652,7 @@ first argument of @c save, @c load or @c delete, followed by the "service" and
|
||||
"user" arguments as used by wxSecretStore methods. After storing some password,
|
||||
you can check that it can be retrieved later and also that it can be seen in
|
||||
the OS-provided password manager (e.g. credential manager under MSW or keychain
|
||||
utility under OS X).
|
||||
utility under macOS).
|
||||
|
||||
@sampledir{secretstore}
|
||||
|
||||
@@ -914,7 +897,7 @@ control.
|
||||
|
||||
The wxWebView sample demonstarates the various capabilities of the wxWebView
|
||||
control. It is set up as a simple single window web browser, but with support
|
||||
for many of the more complex wxWebView features, including browsing through
|
||||
for many of the more complex wxWebView features, including browsing through
|
||||
archives.
|
||||
|
||||
@sampledir{webview}
|
||||
|
@@ -99,5 +99,6 @@ topics related to building applications with wxWidgets.
|
||||
@li @subpage overview_windowdeletion
|
||||
@li @subpage overview_envvars
|
||||
@li @subpage overview_customwidgets
|
||||
@li @subpage overview_high_dpi
|
||||
|
||||
*/
|
||||
|
@@ -466,11 +466,6 @@ Here are the steps you should follow:
|
||||
-# Send the finished translation to <a href="mailto:vadim@wxwidgets.org">Vadim Zeitlin</a>
|
||||
and it will be added to the next wxWidgets release or snapshot.
|
||||
|
||||
In addition, please consider subscribing to the very low volume
|
||||
<a href="https://www.wxwidgets.org/support/mailing-lists/">
|
||||
wxWidgets translators mailing list</a> on which the news especially important
|
||||
for the translators are announced.
|
||||
|
||||
Thank you in advance for your help!
|
||||
|
||||
*/
|
||||
|
@@ -13,7 +13,7 @@
|
||||
|
||||
In addition to the wxWidgets libraries (see @ref page_libs), some utilities
|
||||
are available to the users in the @c utils hierarchy (even if some of them are
|
||||
explicitly conceived for wxWidgets maintainance and will probably be of
|
||||
explicitly conceived for wxWidgets maintenance and will probably be of
|
||||
little use to others).
|
||||
|
||||
Please note that these utilities only represent the utilities developed and
|
||||
|
Reference in New Issue
Block a user