Commit graph

3499 commits

Author SHA1 Message Date
Vadim Zeitlin
e039d78ed3 Remove CONST_COMPATIBILITY which was never used
It already wasn't used in c801d85f15 (Initial revision, 1998-05-20).
2023-01-26 17:24:58 +01:00
Danny Scott
70667fc8ab Include wxrc.exe in the 64-bit wxMSW MSVC binary package
Correct path for x64 wxrc.exe file which prevented it from being
included in the vc14x_x64_Dev archive.

Closes #23122.

Closes #23125.
2023-01-10 00:26:23 +01:00
Vadim Zeitlin
164debb548 Don't compile cursor_png.c as part of the image sample
This file is included from image.cpp and is not supposed to be compiled
itself, this is just a waste of time and results in a (clang) warning
about unused variable defined in this file.
2023-01-06 00:58:05 +01:00
Vadim Zeitlin
e89f05faba Remove memory debugging/tracing support and all related options
Drop disabled by default and pretty useless memory tracing code and all
the overlapping and poorly documented build options related to it.

Remove memory.cpp entirely and update all the make/project files, but
preserve the now completely trivial wx/memory.h for compatibility and
also keep including wx/string.h from wx/object.h as it seems like a lot
of existing code actually depends on this, even if it should not.

Replace the options in the propgrid sample with a couple of other
debug-related options that were not used before to avoid leaving the
"Debugging Section" completely empty.
2023-01-05 21:41:38 +01:00
Vadim Zeitlin
d74c9e51da Remove memcheck sample
This sample wasn't really useful and demonstrated functionality which
was disabled by default since many years and will be completely removed
soon.
2023-01-05 18:24:57 +01:00
Vadim Zeitlin
b7ed2c8376 Merge branch 'cirrus-ci-arm'
Add ARM task to Cirrus CI.

See #23104.
2023-01-03 04:20:19 +01:00
Vadim Zeitlin
f5daf28932 Update copyright years to 2023
Just run misc/scripts/inc_year and commit the results.

See #18690.
2023-01-03 04:15:08 +01:00
Vadim Zeitlin
5ab36f825a Install locales used by our tests in before_install.sh
Previously this was done in the GitHub CI script, but this isn't
specific to GitHub, so do it in the common script to make these locales
also available under Cirrus CI.

Also switch to just installing locales-all instead of installing locales
and then running locale-gen because this is simpler and actually works
(locale-gen would have only worked if we modified /etc/locale.gen before
running it, but we didn't).
2022-12-31 20:31:47 +01:00
Vadim Zeitlin
b2f186cda1 Deal with the absence of lsb_release in the pre-build script
For now just don't do anything distribution-specific if it's absent, if
we really need it, we can install it later.
2022-12-31 19:23:58 +01:00
Vadim Zeitlin
543f5ce6d2 Don't use sudo in pre-build script when running as root
Just run apt-get directly in this case.
2022-12-31 19:23:58 +01:00
Vadim Zeitlin
79e97bd4ca Merge branch 'msw-dlls-arch-suffix'
Include arch-specific suffix in the DLLs names in makefile.vc too.

See #23053, #23093.
2022-12-31 17:02:07 +01:00
Vadim Zeitlin
ebf790f76e Restrict arch suffix for DLLs to MSVC in CMake builds
Amend the changes of edcfeab29d (Include arch-specific suffix in the DLL
names in CMake builds too, 2022-12-23) to only do it when using MSVC but
not the other compilers as this would make CMake incompatible with what
makefile.gcc does.
2022-12-29 18:38:05 +01:00
Artur Wieczorek
227cd581f8 Add tests of wxDCClipper 2022-12-29 12:39:27 +01:00
Vadim Zeitlin
e0db72d80e Include arch-specific suffix in the DLLs names in makefile.vc too
This is similar to edcfeab29d (Include arch-specific suffix in the DLL
names in CMake builds too, 2022-12-23).

See #23053.
2022-12-28 22:06:41 +01:00
Vadim Zeitlin
208142c14a Merge branch 'msw-dark-mode'
Add experimental support for dark mode for wxMSW.

See #23028.
2022-12-27 22:20:34 +01:00
Maarten Bent
edcfeab29d Include arch-specific suffix in the DLL names in CMake builds too
Make the x64 DLL names consistent with the DLLs produced by the MSVS
projects and/or nmake makefiles.

See #23053.

Closes #23071.
2022-12-25 03:15:04 +01:00
Tobias Taschner
db9419af4b
Add wxWebView::EnableBrowserAcceleratorKeys()
The edge backend has various accelerator keys enable per default.
This include Ctrl-P, Ctrl-F, F5 and others. In many uses of webview
this might not be desirable and can be disabled.

This is currently only implemented for the Edge backend.

Raises required WebView2 SDK version from 1.0.705.50 to 1.0.864.35
2022-12-23 14:12:36 +01:00
Vadim Zeitlin
bcea384923 Start adding dark mode support to wxMSW
Add experimental wxApp::MSWEnableDarkMode().

For now this is very incomplete and just uses the basic API for setting
the preferred application mode, which only works for the standard
dialogs and popup menus, but it's a start.

Support of dark mode is also limited to Windows 10 20H1 and later, but
this should, hopefully, be not a problem in practice as few people
should be using pre-2020 Windows 10 versions by now.
2022-12-08 00:15:18 +00:00
Vadim Zeitlin
934fb8c228 Define HAVE_SSIZE_T as 1 in CMake builds for consistency
It is defined as 1, and not as nothing, in configure-generated setup.h
and some projects, e.g. wxPython, rely on this, so do it in the same way
when using configure for consistency.

Closes #23021.
2022-12-05 23:20:47 +01:00
Vadim Zeitlin
c2f3a3db01 Always use wxDynamicLibrary in wxMSW and remove checks for it
Force wxUSE_DYNLIB_CLASS to be 1 when using wxMSW and remove checks for
it being 0 from the code.

No real changes.
2022-12-04 02:12:22 +00:00
Vadim Zeitlin
c29955775a Avoid using a bashism in script returning CPU count
While ((var++)) works in bash, it results in an error message (and
doesn't increment the variable) in dash, so use a POSIX-compatible
construction which works for both of them.
2022-12-04 01:04:01 +01:00
Paul Cornett
7d070a7e83 Remove HAVE_ROUND, it is not used anymore 2022-11-28 09:11:01 -08:00
Vadim Zeitlin
5e60a09aa8 Merge branch 'ci-msw-clang' of https://github.com/MaartenBent/wxWidgets
Add GitHub action building with clang on MSW.

See #22979.
2022-11-20 22:59:37 +01:00
Vadim Zeitlin
aa9e68178e Merge branch 'remove-wxstring-impl'
Remove wxStringImpl and always assume wxUSE_STD_STRING==1.

See #22976.
2022-11-20 22:58:34 +01:00
Maarten Bent
4f0502cde0
Add clang MSW build to CI 2022-11-19 20:00:20 +01:00
Maarten Bent
405b476ff4
Silence -Wdeprecated-non-prototype warnings in zlib build 2022-11-19 20:00:10 +01:00
Vadim Zeitlin
be7860c766 Remove wxUSE_STD_STRING and wxUSE_STD_CONTAINERS_COMPATIBLY
Assume they are always 1 now, there is no good reason to ever set them
to 0 any more.

Note that we still keep wxUSE_STD_IOSTREAM for now, but we can drop
wxUSE_STD_DEFAULT as it's not worth having it just for this single
option (previously it was used as the default value for 3 of them).
2022-11-17 00:40:50 +01:00
Vadim Zeitlin
2c0c727f49 Remove wx own wxStringImpl implementation
Always use std::basic_string<> as wxStringImpl.

Closes #22883.
2022-11-17 00:40:50 +01:00
Vadim Zeitlin
d8ddcaa60b Remove Henry Spencer's regex library and references to it
This library is not used any longer as it was replaced with PCRE, so
there is no need to keep it in the source tree any more.

Closes #22924.
2022-11-16 20:19:21 +01:00
Vadim Zeitlin
20571f07e2 Get rid of platform-specific wxPanel classes
There is no need to have them as they were identical for all platforms.

This basically reverts 5b87bd6c0b (Split wxPanel in wxPanelBase and
platform-specific files., 2011-03-20) as, 10+ years later, it turns out
that we're not going to have more MSW-specific parts, but none of them.

No real changes.
2022-11-12 21:54:35 +01:00
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
48434622c6 Always use vendor in CMake-built DLLs regardless of version
The vendor string was ignored for the stable wxWidgets versions (e.g.,
3.2). However, vendor should be always used when available, regardless
of wxWidgets version. The only case when vendor should not be used is
when creating official builds (currently not done with CMake).

Closes #22931.
2022-11-08 18:17:52 +01:00
PB
6982d70f58 Remove "98" from the supported C++ standards list in CMake
wxWidgets now requires at least C++11.

Closes #22933.
2022-11-08 16:22:45 +01:00
Vadim Zeitlin
0d6f2f2b85 Remove wxSuffix from MSBuild files, it's always "u" now
This doesn't change the library names, but just removes the now
unnecessary (and somewhat confusing when used alongside wxSuffixDebug)
build variable.
2022-10-28 18:26:15 +01:00
Vadim Zeitlin
31ac8012e4 Remove Unicode option support from wx-config and wxwin.m4
Keep the option itself, but hardcode its value.
2022-10-28 01:11:36 +02: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
6e8290a9ce Stop defining _UNICODE in makefiles
This shouldn't be necessary any longer, so don't do it.
2022-10-27 19:43:30 +02:00
Vadim Zeitlin
5c49448c75 Remove bakefile UNICODE_DEFINE variable, always define _UNICODE
It might be unnecessary to define it on command line at all, as it's
done in wx/setup.h, but keep doing it for now.

However stop using a variable for this, as setting wxUSE_UNICODE to 0 is
not supported any longer.
2022-10-27 19:43:30 +02:00
Vadim Zeitlin
0f5018252a Remove wxUSE_UNICODE from build-wxwidgets.py script
This is not needed any more, it will be defined anyhow.
2022-10-27 19:43:30 +02:00
Vadim Zeitlin
885ab36c11 Remove wxUSE_UNICODE option from CMake too
Keep it in build.cfg just in case it's needed for compatibility, but
always define it as 1.
2022-10-27 19:43:30 +02:00
Vadim Zeitlin
5d3e5ccf32 Always define wxUSE_UNICODE as 1
Remove the option allowing to set wxUSE_UNICODE to 0.
2022-10-27 01:04:15 +01: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
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
4e52fbc4b5 Merge branch 'qt-fixes'
Various wxQt build fixes.

See #22902.
2022-10-23 15:55:03 +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
PB
c22f6ba4fc Update comments in setup_inc.h and various wx/setup.h files
Update the outdated or just plain incorrect comments.

Closes #22857.
2022-10-23 15:00:38 +02:00
Vadim Zeitlin
ed510012ba Also add Unix files to wxQt CMake build
Similar to the last commit for configure-based build system.

Co-Authored-By: Maarten Bent <MaartenBent@users.noreply.github.com>
2022-10-23 14:53:44 +02:00
Maarten Bent
875e127108
Regenerate Xcode projects 2022-10-22 20:06:06 +02:00
Maarten Bent
2af3719a4e
Add new scintilla sources to build systems
Mention updating the CMake file in the readme.
Remove NO_CXX11_REGEX from scintilla build.
Manually update vcxproj files.
Define LPEG_LEXER=0, prevent LPEG_LEXER is not defined error.
2022-10-22 19:05:18 +02:00
Vadim Zeitlin
fba8a119a1 Add Unix files to wxQt build under Unix
Compile Unix, but not GUI toolkit, specific wxDialUpManager, wxJoystick
and wxSound implementations when building wxQt.

Closes #22895, #22896.
2022-10-21 19:01:22 +02:00