Commit graph

73120 commits

Author SHA1 Message Date
Vadim Zeitlin
537f11fd4d Improve wxRegEx::GetMatch() return value documentation
Don't imply that the function returns false for the empty capture groups
because this is not the case (and never was).

See #22708.
2022-08-06 18:32:16 +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
Milo Ivir
f602123012 Update Croatian translations
- update Croatian translation with current .pot file
- some corrections in Croatian translation
- removed orphaned/old strings

Closes #22704.
2022-08-06 18:32:16 +02:00
Stefan Csomor
203b78563f adding a standard edit menu
otherwise the file open dialog box does not support copy/paste etc. on mac
2022-08-06 15:19:39 +02:00
Stefan Csomor
5c5d5f524b for non-main screen coordinates, initWithContentRect is not working as expected, introducing workaround
fixes #22614
2022-08-05 16:49:37 +02:00
Vadim Zeitlin
1391e83a9e Merge branch 'circleci-fedora'
Add Circle CI config file for building the libraries and running
(non-GUI only, so far) tests under Fedora.
2022-08-04 02:49:38 +02:00
Vadim Zeitlin
934aa20d69 Build and run tests on Circle CI too
Add more steps to the build job.
2022-08-04 02:48:23 +02:00
Vadim Zeitlin
e63fe497ab Install more optional libraries under Fedora
Add lib{gspell,notify,secret} to the list of packages installed.
2022-08-04 02:48:23 +02:00
Vadim Zeitlin
9f1bf3982d Install RPM required for Shift-JIS support in Fedora
The tests assume Shift-JIS/CP932 support is available, but this is not
the case without installing the "extra" converters on a bare Fedora
system.
2022-08-04 02:48:21 +02:00
Vadim Zeitlin
64aefb5f4e Install locales used by the tests under Fedora
Otherwise the tests are skipped, which is not fatal, but it's still
better to run them.
2022-08-04 02:47:26 +02:00
Vadim Zeitlin
4e26568f97 Replace macOS 10.15 runners with macOS 11 ones
10.15 is being phased out by GitHub, so switch to the still supported
runner platform version.

Closes #22698.
2022-08-04 02:32:18 +02:00
Vadim Zeitlin
9adc030808 Add a note about updating submodules to Git README too
For people unfamiliar with submodules, it may be useful to know how to
update them and not only how to get them initially.

Closes #22695.
2022-08-04 02:30:25 +02:00
David Connet
f94676f0cb Support linking with static runtime when using MSBuild
Add wxRuntimeLibs property which is set to "dynamic" by default, but can
also be set to "static" (e.g. with "msbuild /p:wxRuntimeLibs=static") to
build the libraries using static CRT libraries.

Closes #22693.
2022-08-04 02:27:01 +02:00
Vadim Zeitlin
84120664ca Make Circe CI script more consistent with Cirrus CI
Use the same environment variables in the same way.

No real changes.
2022-08-04 01:09:06 +02:00
Vadim Zeitlin
bf3951866c Install Git before checking out the sources
Check if using git is faster than using the built-in client, which takes
3 minutes to get them.
2022-08-04 01:09:06 +02:00
Vadim Zeitlin
3eb78a328e Use ccache in Circle CI job
Note that with Circle CI, an existing cache can't be modified, so we
create a new cache every time -- and then load the most recent one using
the common prefix.
2022-08-04 01:09:06 +02:00
Vadim Zeitlin
a527b2714d Allow installing extra packages in before_install.sh
This is useful now that it uses different commands for installing
packages under different systems, as it means that we don't have to
write these commands manually in the CI configuration files.
2022-08-04 01:09:06 +02:00
Vadim Zeitlin
b430a6104c Add a minimal Fedora build using Circle CI 2022-08-04 01:09:06 +02:00
Vadim Zeitlin
382db6439b Install required packages on RedHat-like systems
Use dnf to get everything we need for building there.
2022-08-04 01:09:06 +02:00
Vadim Zeitlin
512b8033fe Determine location of libc dynamically in wxDynamicLibrary test
Don't hard code the path to it, even different Linux versions use
different paths, e.g. /lib/x86_64-linux-gnu under Debian and /lib64
under Fedora, so just try all the possibilities until we find something.
2022-08-04 01:07:35 +02:00
Vadim Zeitlin
f27acce6cd Avoid using invalid addresses in ListsTestCase too
This is similar to the previous commit, but done in a slightly different
way to avoid changing too much of the existing code: just make "i" an
alias for the first array element to ensure that "&i + 4" is a valid
pointer.
2022-08-04 00:22:41 +02:00
Vadim Zeitlin
6efb8e810b Avoid using invalid addresses in HashesTestCase
Using "&o + N" results in an invalid address, and a perfectly reasonable
-Warray-bounds from gcc 12, so use an array of objects of sufficiently
big size for all values of N to be valid.
2022-08-04 00:19:31 +02:00
Vadim Zeitlin
cc0c55af7b Merge branch 'gcc-12-opt-warns'
Fix warnings in gcc 12 optimized build.

See #22697.
2022-08-03 21:49:10 +02:00
Vadim Zeitlin
87836e0b97 Avoid bogus -Wuse-after-free in gcc 12 optimized builds
This seems to be https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104215 or
at least similar to it, i.e. a known false positive that we
unfortunately have to work around in this ugly way, by inserting a
compiler-specific barrier.

If we need such workarounds in other places, we should define a
wxCOMPILE_BARRIER macro or something similar, but for now it seems to be
only needed here.
2022-08-03 21:48:43 +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
7999102295 Document wxGrid::RefreshBlock()
This function is useful and there is no reason to exclude it from public
API and it should have been done back in 00224e3f30 (Add
wxGrid::RefreshBlock() helper, 2019-07-11) when it was added.
2022-08-03 19:36:22 +02:00
Vadim Zeitlin
c0f1ecf263 Fix another unbalanced Doxygen grouping command after last commit
Add the missing section start to wxString documentation.

See #22248.
2022-08-03 19:36:22 +02:00
Vadim Zeitlin
8ac10d28f8 Fix all the other comments with Doxygen grouping commands too
This is the same thing as bd92523bc5 (Fix use of Doxygen @addtogroup
command, 2022-08-03) except it fixes comments format for all the other
occurrences of "@{" and "@}" too, not just for those used with
@addtogroup which was the problem in #22572.

This fixes many different formatting problems due to attaching various
Doxygen commands to wrong elements because of broken grouping, e.g. all
overloaded functions were documented incorrectly and there were several
problems in wxString documentation.

See #22248.
2022-08-03 18:58:47 +02:00
Vadim Zeitlin
4c46e01b14 Remove stray Doxygen end group marker
This fixes a warning given, after the changes of the last commit, by
Doxygen 1.9.1 but, amazingly, not given by the latest 1.9.4.

See #22572.
2022-08-03 18:35:45 +02:00
Vadim Zeitlin
bd92523bc5 Fix use of Doxygen @addtogroup command
Put Doxygen grouping constructs ("@{" and "@}") in Doxygen comments
rather than plain C++ ones to make them actually take effect. Some old
Doxygen versions (~1.8.5) did recognize them even in plain comments, but
the currently uses 1.9.1 one does not and @addtogroup didn't have any
effect as the result.

This fixes the problem with the "Functions by Category" pages being
empty in the resulting HTML documentation.

See #22572.
2022-08-03 18:28:06 +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
74e7f5ccc9 Fix incorrect use of strncpy() in Scintilla DMIS lexer
This strncpy() was copying a buffer to itself, justifiably resulting in
a -Wrestrict from gcc-12 when using -O2.
2022-08-03 17:45:29 +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
Vadim Zeitlin
cb0c75fcc3 Remove the obsolete wxEffects files from master file list too
This should have been part of 8a64c8abdc (Remove v2.8 compatibility
flag, add v3.2 flag, 2022-08-01).
2022-08-03 17:29:54 +02:00
Vadim Zeitlin
6fcca0c275 Merge branch 'cxx20-warnings'
Fix more C++20 warnings about incompatible enums.

See #22683.
2022-08-03 17:27:26 +02:00
Artur Wieczorek
5b2991bb77 Get rid of obsolete wxPropertyGrid documentation 2022-08-02 08:28:52 +02:00
Artur Wieczorek
5e2da5a106 Get rid of v2.8 code 2022-08-02 08:26:29 +02:00
Artur Wieczorek
8a64c8abdc Remove v2.8 compatibility flag, add v3.2 flag 2022-08-02 08:26:04 +02:00
Artur Wieczorek
a3fd6cf4e6 Handle non-DIB wxBitmaps correctly in wxMenuItem
Such bitmaps can come from wxImageList but also be created directly, so
we need to handle them -- do it by converting them to DIB, if they are
not in this format yet.

This fixes black background for transparent areas in the menu bitmaps
shown for some of them.

See #22669.

Co-Authored-By: Vadim Zeitlin <vadim@wxwidgets.org>
2022-08-01 17:41:50 +01:00
k3DW
a12a2f1282 Don't use token-pasting with non-identifiers in msvc/wx/setup.h
This used to work with the non-standard preprocessor in the older MSVC
versions, but doesn't work with the new standard-compliant one in MSVS
2022 (enabled by /Zc:preprocessor).

Luckily, it seems that we don't really need it neither, as simply
expanding the macros in a /-separated strings work with both the new and
the old preprocessors and has the same effect, so just do this instead.

Also simplify the code a little by defining wxTOOLKIT_FULL and
constructing wxSETUPH_PATH once instead of twice.

See #22654, #22680.

Co-Authored-By: Vadim Zeitlin <vadim@wxwidgets.org>
2022-08-01 17:02:55 +01:00
Vadim Zeitlin
e0dd7b8522 Add a CI build using C++20
This should allow detecting C++20-specific problems, such as warnings
about combining incompatible enums.
2022-07-31 22:22:58 +02:00
Vadim Zeitlin
4b0fa10a29 Don't mix flags from different enums in wxRegEx unit test
Pass compilation and matching flags using separate parameters instead of
passing them as a single int and then separating them inside the
function.

This is a bit cleaner and also avoids warning about using deprecated
enum operations when using C++20.
2022-07-31 22:22:58 +02:00
Vadim Zeitlin
8a5d9295b7 Fix even more warnings about combining different enums in C++20
This completes the changes of 5477d4faa8 (Avoid warnings when combining
wxStaticText styles with C++20, 2022-07-20) which, in turn, was based on
3d278ee75f (Avoid warnings about operations on different enums in C++20
mode, 2021-04-25).

Also add a test checking that no warnings are given for all possible
enum values combinations (but this test is only useful when using
C++20).

See #22681.
2022-07-31 20:00:18 +02:00
Maarten Bent
667c5c843b CMake: Improve linking with OpenGL libraries
Don't replace OPENGL_LIBRARIES, but prepend existing targets too it.
Also add OPENGL_EGL_INCLUDE_DIRS to OPENGL_INCLUDE_DIR.

See #22649.

Closes #22677.
2022-07-30 15:02:34 +02:00
Aldo Mazzeo
20463b2e69 Replace raw stat/lstat with wx macros
This is shorter, more clear and more portable.

No real changes.

Closes #22670.
2022-07-30 15:01:27 +02:00
Vadim Zeitlin
6ed6d97bfe Don't use system libcurl under Mac with --disable-sys-libs
It doesn't seem right that the system zlib (installed by e.g. MacPorts)
can be picked up by configure even when --disable-sys-libs is specified,
so disable its use under Mac, as libcurl is optional there.

Still use the system libcurl under Linux in the same case, however, as
it's required to have wxWebRequest at all there and dependency on it is
not really a problem in practice.

This commit is best viewed with Git --color-moved
--color-moved-ws=ignore-all-space -w options.
2022-07-30 15:00:27 +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
valid-ptr
0e57ed1851 Fix regression in AUI floating pane positioning when dragging
Fix position updating broken since the recent changes of e777a82bfd (Fix
AUI floating position mismatch, 2022-05-25).

See #22533.

Closes #22651.
2022-07-25 15:57:06 +02:00
Vadim Zeitlin
7bfad4984c Make generic wxListCtrl lines more visible
Use wxSYS_COLOUR_GRAYTEXT, as wxSYS_COLOUR_3DLIGHT is not visible at all
on the default white background under macOS and is barely visible with
the default GTK theme.

On the flip side, it's too bright in the dark themes, but this is,
arguably, better than not being visible at all.

See #22664.
2022-07-24 19:13:21 +02:00
Vadim Zeitlin
43d0eb48c1 Merge branch 'cmake-install'
Fix problems with CMake install target: handle DESDIR and spaces in the
installation path correctly.

See #22660.
2022-07-24 17:09:32 +02:00