Behaviour of this function when the window was hidden was inconsistent:
it didn't show the window in wxMSW but did in wxGTK (where doing this
broke decoration size computation logic, see #25348) and partially did
(meaning it was broken) in wxOSX.
Fix this in the simplest possible way and don't show the window in all
ports now, as it seems to be a safer change than starting to show it in
all of them.
Also document this behaviour.
Closes#18762.
Repeated calls to this function could result in unbounded input queue
growth because timer events were synthesized for each call to it, put
back into the queue if not processed, and then another event would be
synthesized again during the next call.
Fix this by discarding timer events instead. This is not ideal when
using one-off timers, but better than the alternative.
Document this limitation of wxMSW.
See #26204.
Closes#26192.
This is not ideal because it loses the sizes before splitting, but is
better than preserving the same sizes for the existing docks as we did
before because this resulted in there not being enough size for all of
them and some docks became completely hidden.
A future improvement could consist in preserving the current proportions
of the docks, but it's not really clear if it's worth doing this.
Closes#26081.
Add a new function doing what the function with the same name in
wxAuiNotebook used to do but doing it better, i.e. at least not
returning a hardcoded 180x180 size if there are 2 or more existing
panes.
The current, very simple, algorithm seems to be not too bad (and using
1/N seems to be better in practice than using 1/2^N), but it could be
always improved in the future.
Document the existing virtual wxAuiNotebook::CalculateNewSplitSize() as
well because it provides a way for the application to customize the size
used for the splits if the default algorithm is not appropriate.
This function is very simple for now, but it needs to be in wxAuiManager
itself, and not in wxAuiNotebook, where it previously was, to be
enhanced later.
It can also be useful for splitting any kind of panes, not just the
notebook one.
Just use GetPopupMenuSelectionFromUser() which handles this internally.
Also document that ShowDropDown() returns -1 if the menu is dismissed.
No real changes.
Null argument is allowed in wxHtmlHelpController::ReadCustomization()
and is potentially useful here to prevent the use of a dangling pointer.
Also explicitly document that this parameter can be null.
Closes#26238.
There is really no reason for it not to be.
There also doesn't seem to be any reason for it to be virtual, but keep
this just to warn any people who override it in their code so that they
could add "const".
Implement this function as a trivial wrapper for wglGetProcAddress(),
glXGetProcAddressARB() or eglGetProcAddress() depending on the platform
(currently not implemented for macOS).
Account for the known bug in some Windows OpenGL drivers by checking for
manifestly invalid return values and handling them as null.
Use the new function in wxGL code itself and in the pyramid sample.
Closes#9215.
Closes#26209.
This should have been done in e80d78c2c9 (Document
wxGetStockHelpString() function, 2026-02-04) as all types used by the
documented functions should themselves be documented.
Closes#26206.
Change it from 'const wxString&' to just 'wxString' so there is no need to keep a copy around of untranslated strings.
This allows to remove thread_local UntranslatedStringHolder used by GetUntranslatedString, which causes many problems with MinGW.
Fixes#26195.
Don't make the modality enum wxFrame-specific as a very similar enum was
also used with wxDialog.
Replace both of them with wxWindowMode defined in the common header.
Also use "Normal" instead of "None" to avoid conflict with a symbol
defined in X11 headers.
See #26147, #26188.
Closes#26183.
Mention that wxWidgets internal implementation may be used in this case
and replace the mention of MSVC (whose CRT now supports these
extensions) with MinGW.
Mimic the low level OpenGL APIs by allowing to pass -1 to
SetSwapInterval() to request adaptive VSync and implement this for GLX
and WGL.
Change return type of SetSwapInterval() to allow returning a value
indicating that enabling adaptive VSync failed but standard VSync could
still be set.
Allow setting the swap interval value or not setting it at all instead
of always forcing it to 0.
The changes of 3dde6bdeb0 (Disable swap interval in GLX wxGLCanvas
implementation too, 2023-12-25) are not always desirable, so allow to
customize the behaviour.
Implement this for Unix (GLX and EGL) backends for now and allow testing
using these functions in the cube sample.
See #24163, #24165.
It was added back in 345319d60c (fixes to menu stock items support
(patch 1547639), 2006-09-05) and even if it's not particularly useful,
it still should be documented, so add documentation for it.
See #8090.
This was changed in 46857a73ba (Don't use multi-sampling in
wxGLAttributes::Defaults(), 2023-02-14) but the documentation wasn't
updated.
Closes#26143.
Code Checks / Check Spelling (push) Has been cancelled
Code Checks / Check Whitespace (push) Has been cancelled
Code Checks / Check Mixed EOL (push) Has been cancelled
Code Checks / Check C++ Style (push) Has been cancelled
Code Checks / Check All Headers In allheaders.h (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 3 compatible 3.0 (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK ASAN not compatible (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK UTF-8 (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxQt (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxX11 (push) Has been cancelled
Unix builds / Ubuntu 20.04 wxGTK 3 with clang (push) Has been cancelled
Unix builds / Ubuntu 22.04 wxGTK with wx containers (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxDFB (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK UBSAN (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 3 static with gcc 4.8 (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 2 (push) Has been cancelled
CMake builds / Ubuntu 22.04 wxGTK 3 (push) Has been cancelled
CMake builds / macOS latest wxGTK 3 Unix Makefiles (push) Has been cancelled
CMake builds / MSW/MSVC wxMSW (push) Has been cancelled
CMake builds / MSW/Clang wxMSW (push) Has been cancelled
CMake builds / macOS latest wxOSX Ninja (push) Has been cancelled
CMake builds / macOS 14 wxOSX Xcode (push) Has been cancelled
CMake builds / macOS 14 wxIOS (push) Has been cancelled
CMake builds / MSW/MSVC wxQt 5.15 (push) Has been cancelled
CMake builds / MSW/MSVC wxQt 6.10 (push) Has been cancelled
Mac builds / wxMac ARM ASAN not compatible (push) Has been cancelled
Mac builds / wxMac Universal C++14 (push) Has been cancelled
Mac builds / wxiOS Simulator on Silicon Mac (push) Has been cancelled
Mac builds / wxiOS (push) Has been cancelled
Mac builds / wxMac Intel C++17 (push) Has been cancelled
Mac Xcode builds / iOS Simulator static (push) Has been cancelled
Mac Xcode builds / macOS dynamic Release (push) Has been cancelled
Mac Xcode builds / iOS static Debug (push) Has been cancelled
MSW builds / wxMSW vs2022 DLL Debug x64 (push) Has been cancelled
MSW builds / wxMSW vs2022 DLL Release x64 (push) Has been cancelled
MSW builds / wxMSW vs2022 Debug Win32 (push) Has been cancelled
MSW builds / wxMSW vs2022 Release arm64 (push) Has been cancelled
MSW cross-builds / wxMSW 64 bits not compatible (push) Has been cancelled
MSW cross-builds / wxMSW/Univ (push) Has been cancelled
MSW cross-builds / wxMSW 32 bits (push) Has been cancelled
Update Documentation / Update Online Documentation (push) Has been cancelled
Show generic wxTreeCtrl in the sample and improve its colours under MSW,
in both light and dark mode (although the latter could/should still be
improved to be made more similar to the native control).
See #26123.
An introduction to lsb_release is unnecessary, and saying it is very
common on modern Linux distributions is an exaggeration, at least today.
And besides those, the details are not even accurate since
aef7df6 (Read Linux distribution info from os-release file, 2023-07-14)
(#23712), which made lsb_release the fallback method for obtaining
information.
Closes#26125.
Unix builds / Ubuntu 18.04 wxGTK 3 compatible 3.0 (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK ASAN not compatible (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK UTF-8 (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxQt (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxX11 (push) Has been cancelled
Unix builds / Ubuntu 20.04 wxGTK 3 with clang (push) Has been cancelled
Unix builds / Ubuntu 22.04 wxGTK with wx containers (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxDFB (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK UBSAN (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 3 static with gcc 4.8 (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 2 (push) Has been cancelled
CMake builds / Ubuntu 22.04 wxGTK 3 (push) Has been cancelled
CMake builds / macOS latest wxGTK 3 Unix Makefiles (push) Has been cancelled
CMake builds / MSW/MSVC wxMSW (push) Has been cancelled
CMake builds / MSW/Clang wxMSW (push) Has been cancelled
CMake builds / macOS latest wxOSX Ninja (push) Has been cancelled
CMake builds / macOS 14 wxOSX Xcode (push) Has been cancelled
CMake builds / macOS 14 wxIOS (push) Has been cancelled
CMake builds / MSW/MSVC wxQt 5.15 (push) Has been cancelled
CMake builds / MSW/MSVC wxQt 6.10 (push) Has been cancelled
Mac builds / wxMac ARM ASAN not compatible (push) Has been cancelled
Mac builds / wxMac Universal C++14 (push) Has been cancelled
Mac builds / wxiOS Simulator on Silicon Mac (push) Has been cancelled
Mac builds / wxiOS (push) Has been cancelled
Mac builds / wxMac Intel C++17 (push) Has been cancelled
Mac Xcode builds / iOS Simulator static (push) Has been cancelled
Mac Xcode builds / macOS dynamic Release (push) Has been cancelled
Mac Xcode builds / iOS static Debug (push) Has been cancelled
MSW builds / wxMSW vs2022 DLL Debug x64 (push) Has been cancelled
MSW builds / wxMSW vs2022 DLL Release x64 (push) Has been cancelled
MSW builds / wxMSW vs2022 Debug Win32 (push) Has been cancelled
MSW builds / wxMSW vs2022 Release arm64 (push) Has been cancelled
MSW cross-builds / wxMSW 64 bits not compatible (push) Has been cancelled
MSW cross-builds / wxMSW/Univ (push) Has been cancelled
MSW cross-builds / wxMSW 32 bits (push) Has been cancelled
Code Checks / Check Spelling (push) Has been cancelled
Code Checks / Check Whitespace (push) Has been cancelled
Code Checks / Check Mixed EOL (push) Has been cancelled
Code Checks / Check C++ Style (push) Has been cancelled
Code Checks / Check All Headers In allheaders.h (push) Has been cancelled
Update Documentation / Update Online Documentation (push) Has been cancelled
No Response / no-response (push) Has been cancelled
Refactor wxBitmapBundleImplSVG: reduce code duplication by adding
wxBitmapBundleLunaSVG and wxBitmapBundleNanoSVG that implement
DoRasterize().
Allow to use SVG size in wxBitmapBundle::FromSVG() by default.
See #26116.
This is a better value for this colour than the previously used
wxSYS_COLOUR_HIGHLIGHTTEXT which doesn't provide good enough contrast
with the background of the selected items.
Also mention that this colour should provide good contrast in this case.
See #26118.
Unix builds / Ubuntu 18.04 wxGTK 3 compatible 3.0 (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK ASAN not compatible (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK UTF-8 (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxQt (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxX11 (push) Has been cancelled
Unix builds / Ubuntu 20.04 wxGTK 3 with clang (push) Has been cancelled
Unix builds / Ubuntu 22.04 wxGTK with wx containers (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxDFB (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK UBSAN (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 3 static with gcc 4.8 (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 2 (push) Has been cancelled
CMake builds / Ubuntu 22.04 wxGTK 3 (push) Has been cancelled
CMake builds / macOS latest wxGTK 3 Unix Makefiles (push) Has been cancelled
CMake builds / MSW/MSVC wxMSW (push) Has been cancelled
CMake builds / MSW/Clang wxMSW (push) Has been cancelled
CMake builds / macOS latest wxOSX Ninja (push) Has been cancelled
CMake builds / macOS 14 wxOSX Xcode (push) Has been cancelled
CMake builds / macOS 14 wxIOS (push) Has been cancelled
CMake builds / MSW/MSVC wxQt 5.15 (push) Has been cancelled
CMake builds / MSW/MSVC wxQt 6.10 (push) Has been cancelled
Mac builds / wxMac ARM ASAN not compatible (push) Has been cancelled
Mac builds / wxMac Universal C++14 (push) Has been cancelled
Mac builds / wxiOS Simulator on Silicon Mac (push) Has been cancelled
Mac builds / wxiOS (push) Has been cancelled
Mac builds / wxMac Intel C++17 (push) Has been cancelled
Mac Xcode builds / iOS Simulator static (push) Has been cancelled
Mac Xcode builds / macOS dynamic Release (push) Has been cancelled
Mac Xcode builds / iOS static Debug (push) Has been cancelled
MSW builds / wxMSW vs2022 DLL Debug x64 (push) Has been cancelled
MSW builds / wxMSW vs2022 DLL Release x64 (push) Has been cancelled
MSW builds / wxMSW vs2022 Debug Win32 (push) Has been cancelled
MSW builds / wxMSW vs2022 Release arm64 (push) Has been cancelled
MSW cross-builds / wxMSW 64 bits not compatible (push) Has been cancelled
MSW cross-builds / wxMSW/Univ (push) Has been cancelled
MSW cross-builds / wxMSW 32 bits (push) Has been cancelled
Code Checks / Check Spelling (push) Has been cancelled
Code Checks / Check Whitespace (push) Has been cancelled
Code Checks / Check Mixed EOL (push) Has been cancelled
Code Checks / Check C++ Style (push) Has been cancelled
Code Checks / Check All Headers In allheaders.h (push) Has been cancelled
Update Documentation / Update Online Documentation (push) Has been cancelled
No Response / no-response (push) Has been cancelled
Mention wxDIALOG_NO_PARENT in the documentation of the parent parameter
as people who don't know about this style are not going to see this
style documentation either.
See #23560.