Commit graph

7808 commits

Author SHA1 Message Date
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
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
Vadim Zeitlin
7667bf30eb Merge branch 'version-3.3'
Update version of the libraries to 3.3 in master.
2022-07-24 16:05:21 +02:00
Vadim Zeitlin
cb47205ae1 Update ABI checking instructions to use libabigail tools
The previously used abi-compliance-checker doesn't seem to work any
more, so switch to an alternative ABI diff tool.
2022-07-17 16:58:11 +02:00
Vadim Zeitlin
67c261b944 Update library version to 3.3
Manually change the minor version value everywhere.

Reset the contents of the README in preparation for the future 3.3.0
release.
2022-07-16 17:02:56 +02:00
Vadim Zeitlin
ee6d58abe2 Don't call wxDocument::OnCloseDocument() twice when closing
When closing the document using wxDocManager::CloseDocument(), which is
what happens when using the standard wxID_CLOSE menu command handler,
OnCloseDocument() was called twice: first when wxDocument::Close() was
called directly from CloseDocument() itself and once again later when it
was implicitly called from DeleteAllViews().

This was unexpected and also resulted in calling DeleteContents() twice,
which is even more so for a function supposed to perform cleanup.

Fix this by not calling Close() itself but instead a new CanClose()
function from CloseDocument() to check whether we can close and then
relying on DeleteAllViews() to actually close the document.
2022-07-15 00:15:40 +01:00
Vadim Zeitlin
304f173924 Rename the existing changelog to changes_32.txt and add a new one
To prevent the changelog file from growing too big, start a new one for
the next release.

Also restore the instructions about updating it from Git notes just
before the release.
2022-07-11 00:21:21 +02:00
Vadim Zeitlin
b5de46c044 Merge branch 'update-contributors'
Update contributors list for 3.2 release.

See #22593.
2022-07-05 01:40:21 +02:00
Vadim Zeitlin
6c65510a2c Warn about using find_package(wxWidgets) with older CMake
Provide a link to the latest and working version of this file.

See #22590.

Closes #22594.

Co-Authored-By: Maarten Bent <MaartenBent@users.noreply.github.com>
2022-07-04 01:20:26 +02:00
Vadim Zeitlin
9ad06f4b81 Update contributors list for 3.2.0
Also move some historical contributors to a separate section.
2022-07-02 19:21:56 +02:00
Vadim Zeitlin
976edaf026 Merge branch 'doxygen-css'
Switch to using Doxygen 1.9.1 with custom theme for the documentation.

Closes #18849.
2022-07-02 17:39:06 +02:00
Vadim Zeitlin
ba7894fca4 Disable custom Doxygen theme support for CHM generation
Unsurprisingly, this doesn't work at all with CHM, so allow disabling
using the custom theme when doing it by adding more custom variables.

Using (multiple) variables for this is rather ugly, but we already use
them for other options, so it seems better to keep adding them rather
than using some other mechanism.

Adding a different custom header file is even uglier, but it seems to be
the only way to avoid including the theme JS files into CHM.
2022-07-02 17:37:53 +02:00
Vadim Zeitlin
1a53e80bf7 Use Doxygen Awesome CSS theme
Import the theme files into a subdirectory without any changes, even not
removing the trailing whitespace, to facilitate updating them in the
future. Do not add the theme as a submodule as it's surprisingly big
(~12MB) and we don't want to spend extra time on cloning it in each of
our CI builds.

Using this theme gives a nicer appearance and supports the often
requested dark mode.

Remove all colour-related options from the existing custom CSS file as
they don't work well in dark mode.

Also switch to using SVGs with transparent background, rather than PNGs,
for the class diagrams, to avoid background colour mismatch in dark
mode.
2022-07-02 16:57:57 +02:00
Vadim Zeitlin
3c7596f0ff Switch to using Doxygen 1.9.1 for the documentation generation
This fixes the problem with empty descriptions in the annotated class
list and is a prerequisite for using custom CSS theme in the upcoming
commits.

Closes #22288.
2022-07-02 16:10:21 +02:00
Vadim Zeitlin
f2e7f6a917 Fix wrong XML fragment syntax highlighting in liblzma docs
Turn off syntax highlighting entirely because using ".xml" here results
in total garbage in output for some reason (while not using any specific
language uses C++ highlighting which is confusing).
2022-07-02 16:06:29 +02:00