Commit graph

7821 commits

Author SHA1 Message Date
Vadim Zeitlin
b4b23ac423 Merge branch 'always-use-thread-local'
Always use thread_local as we can rely on compiler TLS support working
under Windows 7 and later.

There are some known problems in MinGW thread local variable support,
but they only affect (obsolete) 32-bit builds and will hopefully be
fixed in this compiler soon.

See #22917.
2022-11-10 16:32:42 +01:00
PB
b112dfb4a0 Update Windows Theme support page 2022-11-08 23:41:12 +01:00
PB
82f4d5dde0 Update Build and Install Instructions for Windows
Just change "Windows XP" support to "Theme Support" when referring
to visual styles.
2022-11-08 23:41:12 +01:00
PB
a46e50b31d Update wxMSW part of Platform Details overview
Just change minimal supported MSVS version from 2005 to 2015.
2022-11-08 23:41:12 +01:00
PB
ebf807dcf5 Update Installing wxWidgets for Windows platform guide 2022-11-08 23:41:12 +01:00
PB
41fc16489e Update Multithreading Overview programming guide 2022-11-08 23:41:12 +01:00
PB
dd9f47d1a7 Update C++ Exceptions programming guide 2022-11-08 23:41:12 +01:00
PB
6115692265 Update Environment Variables programming guide
No real changes, just add reference to wxSystemOptions,
which also uses system environment variables to affect
behaviour of wxWidgets applications.
2022-11-08 23:41:12 +01:00
PB
cf43c97f7d Update Backwards Compatibility programming guide.
No real changes, basically just update wxWidgets versions used
to more recent ones.
2022-11-08 23:41:12 +01:00
PB
875872b53b Update Archive Formats programming guide.
Remove mentions of unsupported rar and cab formats.

Mention that XZ format using LZMA2 algorithm can be used.

Update the code examples (remove wxT() and use unique_ptr instead of
auto_ptr).
2022-11-08 23:40:45 +01:00
Vadim Zeitlin
b1a4287b36 Remove mentions of non-Unicode build from wxMBConv overview
Also try to make it more useful for 2022.
2022-10-28 18:56:27 +01:00
Vadim Zeitlin
6e7ca418b7 Update libraries and wx-config names documentation
Hardcode "u" and "unicode" as they're not build options any longer.
2022-10-28 18:40:09 +01:00
Vadim Zeitlin
cf474d7f48 Remove wxOnAssert() overload used in ANSI build only
This could be also used by the applications if they decided to call it
directly, for whatever reason, but, hopefully, this shouldn't be a
common occurrence, as passing wide file name is really inconvenient, and
it was deprecated since 2.8, so should be safe to remove by now.
2022-10-28 18:38:41 +01:00
Vadim Zeitlin
c78b0d652b Remove UNICODE build option, hardcode its value as 1
Also hardcode "u" suffix for the library names -- it doesn't make sense
any longer, but we need to keep it for compatibility.
2022-10-27 19:43:59 +02:00
Vadim Zeitlin
53b3b979fe Remove tests for _UNICODE too
It is now always defined, so testing for it is useless.

Give an error in MSVC-specific header if it is not defined as it should
be.
2022-10-27 19:43:30 +02:00
Vadim Zeitlin
340998fe77 Add a note about not supporting wxUSE_UNICODE=0 to the change log 2022-10-27 19:43:30 +02:00
Vadim Zeitlin
d5617965a6 Remove extraneous "}" from macros documentation
Somehow this isn't a problem for Doxygen, but it's still wrong to have
unmatched "}" here.
2022-10-27 19:43:30 +02:00
Vadim Zeitlin
7927c9abc0 Stop mentioning --disable-unicode in build instructions
This option doesn't exist any more.
2022-10-27 19:43:30 +02:00
Vadim Zeitlin
c8f29fea8f Remove most mentions of wxUSE_UNICODE from the documentation
Still document this symbol itself, but only as being defined as 1.
2022-10-27 19:43:30 +02:00
Vadim Zeitlin
4e802e6fc7 Remove wxUSE_COMPILER_TLS and always use C++11 thread_local
Don't use compiler-specific __thread and use the standard keyword
instead.

Keep the existing TLS-related macros for compatibility, but remove our
custom implementation of them, so that they're always trivial now.
2022-10-26 03:31:54 +02:00
Vadim Zeitlin
4eae6b7ff1 Improve wxBITMAP() documentation
Document wxHAS_IMAGE_RESOURCES and talk about wxBITMAP_PNG() before
wxBITMAP() instead of doing it as only an afterthought.
2022-10-23 16:31:52 +02:00
Vadim Zeitlin
adb29b1903 Merge branch 'scintilla_3.10.5' of https://github.com/MaartenBent/wxWidgets
Upgrade Scintilla to 3.21.1.

See #1331.
2022-10-23 16:03:31 +02:00
Vadim Zeitlin
ca4e70df74 Add a Docker container for regenerating wx configure
This allows doing it on any system with Docker instead of having to do
it only under Debian stable that was traditionally used for this.

Closes #22889.
2022-10-23 15:24:21 +02:00
Maarten Bent
619071cb71
Fix NULL usage
Ignore scintilla files in NULL check.
Allow to use nullptr as an alias.
2022-10-22 21:30:37 +02:00
Vadim Zeitlin
9f46e67eec Merge branch 'nullptr'
Use nullptr instead of NULL in the code, comments and the documentation.

See #22881.
2022-10-18 18:34:07 +02:00
Vadim Zeitlin
c2eab06e4b Merge branch 'remove-motif-and-gtk1'
Remove obsolete and unmaintained wxMotif and wxGTK1 ports.

See #22877.
2022-10-18 18:30:58 +02:00
Vadim Zeitlin
4f4c5fcfdf Use nullptr instead of NULL in the code and documentation
This is a combination of running clang-tidy with modernize-use-nullptr
check for some ports (GTK, X11, OSX) and manual changes to the ports for
which it couldn't be used easily (MSW, DFB) and also manually updating
the docs.

Also replace NULL with null or nullptr in the comments as this is more
consistent with the use of nullptr in the code and makes it simpler to
grep for the remaining occurrences of NULL itself.

And also use null in the assert messages.

Only a few occurrences of "NULL" are still left in non-C files, mostly
corresponding to unclear comments or string output which it might not be
safe to change.
2022-10-18 01:25:25 +02:00
Vadim Zeitlin
b0ed71658d Document WS_EX_COMPOSITED impact on wxClientDC
This is a big and incompatible change but, arguably, is still worth
making because it makes wxMSW behaviour similar to that of wxOSX and
wxGTK when using Wayland.

Do document it prominently and also document MSWDisableComposited() as
it will probably end up being used in quite a lot of existing code.
2022-10-17 17:22:43 +01:00
Vadim Zeitlin
fb4f0b590c Remove wxGTK1 port and GPE support
Remove the port files and references to it from the common headers and
elsewhere.

Also remove GPE (GNOME PDA Environment) support as libgpewidget is
unmaintained since 2006 or so and has never been really used.

Use __WXGTK__ to test for any version of wxGTK now. Still define
__WXGTK20__ for compatibility, but always define it now and don't test
for it in the library code.
2022-10-16 22:01:02 +02:00
Vadim Zeitlin
0ef1cdcc21 Remove support for wxMotif
This port hasn't been updated for ages and is not used by anybody any
longer, so remove its code to facilitate maintenance.

Also remove references to this port from the documentation and most of
the other places (VMS-specific descrip.vms files still check for it
because it's not clear how to update them all), including configure.

Regenerate the latter and rebake all makefiles.

Finally document that this port is not available any longer.
2022-10-16 16:39:56 +02:00
Vadim Zeitlin
041060d0de Remove a very obsolete and unused "publicity" document
Its contents has become embarrassingly obsolete by now.
2022-10-16 15:30:29 +02:00
Vadim Zeitlin
be5095acdd Update documentation of deprecated C++11-related macros
Still document them for completeness, but mention that they are
deprecated and shouldn't be used.
2022-10-15 18:01:34 +02:00
Vadim Zeitlin
5cfc89c10b Give more details in wxMSVC_VERSION_AUTO documentation
Explicitly list all the prefixes used with it currently.
2022-10-11 21:33:33 +02:00
PB
a2b84d40a0 Prune mentions of no longer supported compilers from the docs
Remove mentions of older MSVC versions and very old gcc versions.
2022-10-11 21:32:27 +02:00
Vadim Zeitlin
5ac3c85cce Add an example of using wxrc docs with CMake add_subdirectory()
There are a couple of non-trivial points when using wxrc in this
configuration, so document using $<TARGET_FILE:wxrc> and having to use
"DEPENDS wxrc" in this case.

See #22815.
2022-09-22 18:26:50 +02:00
Lauri Nurmi
969b1fad4c Fix more double negatives used with 'neither'
In many cases it should be 'either'.

No changes to actual code.

Complements #22723, which focused on API docs and comments in C++ code.

Co-authored-by: Ian McInerney <ian.s.mcinerney@ieee.org>

See #22798.
2022-09-18 18:02:07 +02:00
Vadim Zeitlin
dd50c77a88 Update the instructions for creating releases on GitHub
Explain how to use the new workflow to automate even more parts of the
release process.
2022-09-15 18:45:06 +02:00
Vadim Zeitlin
e2a6eac6e8 Merge branch 'grid-freeze-no-size-check'
Fix checks in wxGrid::FreezeTo(): do not silently do nothing if the grid
is too small or all rows/columns are frozen. Do assert if the parameters
are out of range.

See #22766.
2022-09-02 19:18:40 +02:00
Bryan Petty
6a10064d24
Remove dark-mode color invert from screenshots in manual 2022-09-01 18:49:38 -06:00
Vadim Zeitlin
de345d33b2 Merge branch 'docview-onclosedoc'
Improvements to closing wxDocument: don't call OnCloseDocument() twice.

See #22627.
2022-08-30 11:12:58 +01:00
Lauri Nurmi
66916c74a3 Fix double negatives used with 'neither' in docs and comments
In many cases it should be 'either', and 'nor' should be 'or'
accordingly.

No changes to actual code.

Closes #22723.
2022-08-19 16:22:21 +02:00
PB
897673db64 Set default build compatibility in CMake builds to 3.2
Remove "2.8" and "3.1" from wxBUILD_COMPATIBILITY options.

Add "3.2" to wxBUILD_COMPATIBILITY options and set it as its default value.

Closes #22715.
2022-08-18 21:49:19 +02:00
Randalphwa
f242ad534b Add link to wxUiEditor in list of XRC tools
The most recent form designer, current with the XRC changes added up
through wxWidgets 3.2.0, and also the only tool that creates XRC file(s)
directly instead of requiring cut/paste.

Closes #22709.
2022-08-06 18:32:16 +02:00
Vadim Zeitlin
d8da119ea1 Remove doxygen log file if it's empty in the helper script
This allows to avoid having an untracked file in the repository, so it
doesn't need to be ignored any longer, as it shouldn't exist after a
successful run.

Also output a warning if the log file is not empty, even though the full
dump is only shown in the GitHub workflow file, as when running the
script locally it may be more convenient to examine the log file in some
other way.
2022-08-03 19:43:10 +02:00
Vadim Zeitlin
eb1242cc1c Merge branch 'compat-32'
Remove WXWIN_COMPATIBILITY_2_8 and associated code, add
WXWIN_COMPATIBILITY_3_2.

See #22692.

Closes #22686.
2022-08-03 18:13:44 +02:00
Vadim Zeitlin
6917b6b0f1 Document wxTHREAD_WAIT_DEFAULT value change
It has been a long-time coming, see b95a7c3144 (Allow wxThread::Wait()
and Delete() to block, even under wxMSW., 2011-03-14), but do still
document that it has finally changed.
2022-08-03 17:39:48 +02:00
Artur Wieczorek
5b2991bb77 Get rid of obsolete wxPropertyGrid documentation 2022-08-02 08:28:52 +02:00
Artur Wieczorek
8a64c8abdc Remove v2.8 compatibility flag, add v3.2 flag 2022-08-02 08:26:04 +02:00
Vadim Zeitlin
57bf9c5af5 Escape all "__" in Doxygen to preserve them in the output
New version of Doxygen interprets __foo__ as Markdown markup and
consumes the underscores, which mangles the identifier.

Prevent this from happening by escaping the leading underscore for all
occurrences of "__" outside of the code blocks, this seems to be the
least intrusive fix.

See #22671.
2022-07-30 14:56:23 +02:00
Vadim Zeitlin
541be26e78 Mention that changes in 3.2.x should also be part of 3.3.0
It's a bit wasteful to also mention these changes in the Git notes, so
don't do it and just leave a reminder to copy the existing change log
entries from 3.2 branch instead when it's time to release 3.3.0.
2022-07-24 16:24:33 +02:00