Commit Graph
100 Commits
Author SHA1 Message Date
PB 5d26584cb8 Allow running tests from MSVS in DLL configurations
Create file tests/tests.props which adds the DLL build directory
to MSVS PATH in <LocalDebuggerEnvironment> property and add the
file to test.vcxproj and test_gui.vcxproj MSVC projects.

See also eba106431a (Allow running samples from MSVS in DLL
configurations, 2024-11-14).

Closes #26171.
2026-02-10 01:03:52 +01:00
PB bcbf1afbb6 Add MSVS 2026 solutions for tests and wxrc
This should have been part of 3d88038 (Add support for MSVS
2026, 2026-01-29).

Closes #26167.
2026-02-07 18:26:58 +01:00
PB e688d81af7 Fix MSVS 2015 build using original Platform SDK
The Windows headers bundled with MSVS 2015 do not define
WINHTTP_OPTION_HTTP_PROTOCOL_USED, an option flag required
after 9a76757 (Add wxWebRequestDebugLogger for details
logging of HTTP transfers, 2026-01-15).

Fix this by defining the option flag by ourselves when needed.

Closes #26144.
2026-02-01 14:55:43 +01:00
PB fcf7c97544 Use custom configuration name in objects dir path with MSBuild
When using MSBuild, use the custom configuration name (property wxCfg)
in the object files folder name (property wxIntRootDir), just as it is
already done in the NMake makefile.

Closes #26135.

Closes #26136.
2026-01-31 14:30:11 +01:00
PB 3d88038d01 Add support for MSVS 2026
Update wx_config.props, add MSVS 2026 solutions for the library
and samples, and update the docs.

Closes #26131.
2026-01-29 23:04:01 +01:00
PB fd0000645c Improve documentation for building wxWebViewEdge
Note that the backend is enabled by default when using CMake.

Explain how WebView2 SDK is used with CMake.

Slightly improve wording and formatting.
2025-07-01 20:17:21 +02:00
PB 47a0e7a770 Extend the list of MSW dark mode limitations
Add wxCalendarCtrl to the list of controls not supporting dark
mode at all.

Note that calling wxMenuItem::SetDisabledBitmap() will make
its wxMenu light.
2025-07-01 19:17:51 +02:00
PB f22a5d6fc1 Link libwebp when using MSVC-specific setup.h
Recently added libwebp was not added to the libraries MSVC automatically
links with when adding "$(WXWIN)\include\msvc" to the include paths.

This should have been part of ad6f05a (Add support for WebP image format, including animations, 2025-05-11).
2025-06-22 19:28:26 +02:00
PB 837e7b6dfa Fix wxPersistent(CheckBox|RadioButton) version availability in docs
wxPersistentCheckBox and wxPersistentRadioButton did not make it into
wxWidgets 3.3.0, they are available only since 3.3.1.

Closes #25539.
2025-06-17 21:25:29 +02:00
PB d5c140a801 Fix webrequest and webview samples build with MSVC in C++20 mode
Unix builds / Ubuntu 24.04 wxGTK with ASAN (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 3 compatible 3.0 (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 24.04 wxGTK with UBSAN (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxDFB (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 / Windows MSVC (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 / Windows wxQt 6.8 (push) Has been cancelled
Mac builds / wxMac Universal C++14 (push) Has been cancelled
Mac builds / wxMac ARM with ASAN (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 vs2019 DLL Release x64 (push) Has been cancelled
MSW builds / wxMSW vs2019 Debug Win32 (push) Has been cancelled
MSW builds / wxMSW vs2022 Release arm64 (push) Has been cancelled
MSW builds / msw-msys2-clang (push) Has been cancelled
MSW cross-builds / wxMSW 64 bits (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
Using a const char* and a wxString in the two branches of the ternary
operator resulted in compile-time errors when using C++20 standard
since the result type of the conditional expression was ambiguous,
so add explicit conversions to fix it.

See also #19355.

Closes #25501.
2025-06-09 22:57:00 +02:00
PB f466a17f5e Update Czech translations
Add missing translations and fix fuzzy ones.

Closes #25412.
2025-05-17 00:44:06 +02:00
PB b58e2c472f Fix typos in changes.txt
Change "is" to "its" and add a missing comma.

Closes #25387.
2025-05-10 19:06:31 +02:00
PB 690aedb2d5 Fix typo in wxWebViewChromium error message
Add the missing letter.

Closes #25383.
2025-05-10 15:21:11 +02:00
PB 5bc736df13 Purge mentions of no longer supported MSVC versions from docs
Unix builds / Ubuntu 24.04 wxGTK with ASAN (push) Waiting to run
Unix builds / Ubuntu 18.04 wxGTK 3 compatible 3.0 (push) Waiting to run
Unix builds / Ubuntu 18.04 wxGTK UTF-8 (push) Waiting to run
Unix builds / Ubuntu 18.04 wxQt (push) Waiting to run
Unix builds / Ubuntu 18.04 wxX11 (push) Waiting to run
Unix builds / Ubuntu 20.04 wxGTK 3 with clang (push) Waiting to run
Unix builds / Ubuntu 22.04 wxGTK with wx containers (push) Waiting to run
Unix builds / Ubuntu 24.04 wxGTK with UBSAN (push) Waiting to run
Unix builds / Ubuntu 18.04 wxDFB (push) Waiting to run
Unix builds / Ubuntu 18.04 wxGTK 3 static with gcc 4.8 (push) Waiting to run
Unix builds / Ubuntu 18.04 wxGTK 2 (push) Waiting to run
CMake builds / Ubuntu 22.04 wxGTK 3 (push) Waiting to run
CMake builds / Windows MSVC (push) Waiting to run
CMake builds / macOS 14 wxOSX (push) Waiting to run
CMake builds / macOS 14 wxIOS (push) Waiting to run
CMake builds / Windows wxQt 6.8 (push) Waiting to run
Mac builds / wxMac Universal C++14 (push) Waiting to run
Mac builds / wxMac ARM with ASAN (push) Waiting to run
Mac builds / wxiOS (push) Waiting to run
Mac builds / wxMac macOS 14 (push) Waiting to run
Mac builds / wxMac Intel C++17 (push) Waiting to run
Mac Xcode builds / iOS static Debug (push) Waiting to run
Mac Xcode builds / iOS Simulator static (push) Waiting to run
Mac Xcode builds / macOS dynamic Release (push) Waiting to run
MSW builds / wxMSW vs2022 DLL Debug x64 (push) Waiting to run
MSW builds / wxMSW vs2019 DLL Release x64 (push) Waiting to run
MSW builds / wxMSW vs2019 Debug Win32 (push) Waiting to run
MSW builds / wxMSW vs2022 Release arm64 (push) Waiting to run
MSW builds / msw-msys2-clang (push) Waiting to run
MSW cross-builds / wxMSW 64 bits (push) Waiting to run
MSW cross-builds / wxMSW/Univ (push) Waiting to run
MSW cross-builds / wxMSW 32 bits (push) Waiting to run
Code Checks / Check Spelling (push) Waiting to run
Code Checks / Check Whitespace (push) Waiting to run
Code Checks / Check Mixed EOL (push) Waiting to run
Code Checks / Check C++ Style (push) Waiting to run
Code Checks / Check All Headers In allheaders.h (push) Waiting to run
Update Documentation / Update Online Documentation (push) Waiting to run
No Response / no-response (push) Has been cancelled
Remove the note from wxEvtHandler::Bind().

Update "How to use wxMSW binaries" guide.

Closes #25289.
2025-04-04 18:01:58 +02:00
PB c88c86ece9 Recognize Windows Server 2025 in wxGetOsDescription()
Recognize Windows Server 2025 in wxGetOsDescription()
and update Windows OS table in wxGetOsVersion() docs.

Closes #25066.
2025-01-12 15:43:51 +01:00
PB e0b055e53b Improve window sizing documentation
CMake builds / ${{ matrix.name }} (-DCMAKE_C_COMPILER=cl.exe -DCMAKE_CXX_COMPILER=cl.exe, Ninja, SOME, CONSOLE_ONLY, Windows MSVC, 1, windows-latest) (push) Has been cancelled
CMake builds / ${{ matrix.name }} (-DCMAKE_SYSTEM_NAME=iOS -DCMAKE_FIND_ROOT_PATH=/usr/local -DCMAKE_XCODE_ATTRIBUTE_CODE_SIGNING_ALLOWED=NO, Xcode, OFF, OFF, macOS 14 wxIOS, macos-14) (push) Has been cancelled
CMake builds / ${{ matrix.name }} (Unix Makefiles, ALL, Ubuntu 22.04 wxGTK 3, ubuntu-22.04) (push) Has been cancelled
CMake builds / ${{ matrix.name }} (Xcode, macOS 14 wxOSX, macos-14) (push) Has been cancelled
Mac builds / ${{ matrix.name }} (arm64, --with-cxx=14 --enable-universal_binary=arm64,x86_64 --disable-shared --disable-debug --enable-optimise, wxMac Universal C++14, self-hosted) (push) Has been cancelled
Mac builds / ${{ matrix.name }} (arm64, wxMac ARM with ASAN, self-hosted, true) (push) Has been cancelled
Mac builds / ${{ matrix.name }} (true, x86_64, PKG_CONFIG_LIBDIR=/dev/null, --with-osx_iphone --enable-monolithic --disable-sys-libs --host=i686-apple-darwin_sim --build=x86_64-apple-darwin17.7.0, wxiOS, macos-14, true, true, iphonesimulator) (push) Has been cancelled
Mac builds / ${{ matrix.name }} (x86_64, --disable-sys-libs, wxMac macOS 14, macos-14) (push) Has been cancelled
Mac builds / ${{ matrix.name }} (x86_64, --with-cxx=17 --with-macosx-version-min=10.12 --enable-debug, wxMac Intel C++17, self-hosted) (push) Has been cancelled
Mac Xcode builds / ${{ matrix.name }} (x86_64, Debug, generic/platform=iOS, iOS static Debug, build/osx/wxiphone.xcodeproj, macos-latest, static) (push) Has been cancelled
Mac Xcode builds / ${{ matrix.name }} (x86_64, Release, generic/platform=iOS Simulator, iOS Simulator static, samples/minimal/minimal_iphone.xcodeproj, macos-latest, app-static) (push) Has been cancelled
Mac Xcode builds / ${{ matrix.name }} (x86_64, Release, generic/platform=macOS, macOS dynamic Release, samples/minimal/minimal_cocoa.xcodeproj, self-hosted, app-dynamic) (push) Has been cancelled
MSW builds / wxMSW vs${{ matrix.vsversion }} ${{ matrix.configuration }} ${{ matrix.platform }} (DLL Debug, x64, true, 2022) (push) Has been cancelled
MSW builds / wxMSW vs${{ matrix.vsversion }} ${{ matrix.configuration }} ${{ matrix.platform }} (DLL Release, x64, 2019) (push) Has been cancelled
MSW builds / wxMSW vs${{ matrix.vsversion }} ${{ matrix.configuration }} ${{ matrix.platform }} (Debug, Win32, 2019) (push) Has been cancelled
MSW builds / wxMSW vs${{ matrix.vsversion }} ${{ matrix.configuration }} ${{ matrix.platform }} (Release, arm64, 2022) (push) Has been cancelled
MSW builds / msw-msys2-clang (push) Has been cancelled
MSW cross-builds / ${{ matrix.name }} (--disable-compat32, testing, wxMSW 64 bits) (push) Has been cancelled
MSW cross-builds / ${{ matrix.name }} (--enable-universal --disable-compat32 --disable-debug --disable-optimise, testing, true, wxMSW/Univ) (push) Has been cancelled
MSW cross-builds / ${{ matrix.name }} (stable, wxMSW 32 bits, i686-w64-mingw32) (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
Update Documentation / Update Online Documentation (push) Has been cancelled
Fix the flag name in wxSizerFlags::Shaped() description.

Add a reference to Windows Sizing Overview to Window Layout page and
Sizers Overview.

Add a reference to Sizers Overview to Window Sizing Overview.

Closes #25044.
2025-01-06 22:16:06 +01:00
PB 32d8c26e72 Improve samples' categorization in MSVS solutions 2024-11-21 22:40:46 +01:00
PB 0ba0c6d250 Remove dependency on advanced library from widgets sample
The library does not exist any more.
2024-11-21 22:40:46 +01:00
PB 631712174d Add dependency to core and base to my_dll sample
my_dll sample uses wxWidgets, so add the dependency to the
required libraries to avoid a build error.
2024-11-20 13:46:42 +01:00
PB 40451e3138 Restructure sample solutions structure
Attempt to assign the samples into their respective categories.
2024-11-20 13:46:38 +01:00
PB eba106431a Allow running samples from MSVS in DLL configurations
Create file samples/samples.props which adds the DLL build directory
to MSVS PATH in <LocalDebuggerEnvironment> property.

Add file samples.props to all MSVS sample projects.
2024-11-16 18:35:41 +01:00
PB f37e1d92ff Fix resource file names in some projects
Several projects were using the generic sample.rc instead
of the sample-specific resource file.
2024-11-16 18:35:41 +01:00
PB d51cd22392 Fix typos in wxWebViewConfiguration docs
Fix typos in the example code in GetNativeConfiguration() method.
2024-10-26 21:39:04 +02:00
PB ce8bc7c1fc Improve wxWebView docs
Make a number of factual and formal changes. The most important
ones are noting that wxWebViewChromium does not support script
message handlers and accounting for the fact that there can be
multiple backends on each platform.
2024-09-18 20:58:13 +02:00
PB a823202450 Change when wxWebViewEdge sends wxEVT_WEBVIEW_CREATED
wxEVT_WEBVIEW_CREATED should be sent only after the actual
web engine instance behind wxWebView (here WebView2) was created.

However, the Edge backend sent it from wxWebViewEdge::Create(),
i.e., before the web engine was created. Fix this by sending the
event from wxWebViewEdgeImpl::OnWebViewCreated() instead, where/when
the web engine instance does exist.

Closes #24758.
2024-09-18 20:53:50 +02:00
PB a2ffd37c48 Improve wxDirDialog documentation
Remove outdated information about special meaning of wxRESIZE_BORDER
style flag on Windows.

Add a reference to ::wxDirSelector() and wxDirPickerCtrl.

Improve formatting by using @c where appropriate and fix few typos.

In the common dialogs overview, add that wxDirDialog can be used to
select also mutiple directories.
2024-08-24 20:20:31 +02:00
PB a216408bf0 Improve documentation for convenience input functions
In wxDirSelector, provide the correct default argument for
the wxDirDialog style parameter, change the path parameter
name to match the implementation, and fix the example code.

Provide information about wxFD_ flags used by wxLoadFileSelector()
and wxSaveFileSelector().

Add missing default arguments for wxGetColourFromUser() and wxGetFontFromUser() parameters.

Improve formatting by using @c where appropriate.
2024-08-24 20:19:10 +02:00
PB 35845abe11 Add missing descriptions of wxGrid::Calc*Exposed() methods to docs
wxGrid methods CalcRowLabelsExposed(), CalcColLabelsExposed(), and
CalcCellsExposed() were missing descriptions in the interface header
docs, so the description of AppendCols() was wrongly used for all three
methods in the generated docs.
2024-08-19 21:06:48 +02:00
PB 9af1c8e240 Remove outdated note from wxTreeCtrl docs
Remove the note about possible visual glitches when using
the control on Windows with old versions of comctl32.dll.
2024-08-19 20:38:19 +02:00
PB fafcab97ce Improve wxWebView and wxWebViewChromium documentation
Expand the description of wxWebView::GetNativeBackend().

Note that EVT_WEBVIEW_CREATED is available only since wxWidgets 3.3.

Add references to relevant classes and methods.

Improve wording and formatting.

Mention that other versions of CEF may work.

Closes #24752.
2024-08-11 21:28:02 +02:00
PB f63d759e3c Slightly improve wxCollapsiblePane docs
Improve the example code by (a) omitting the defaults when calling
wxSizerFlags()::Border() and (b) calling wxSizer::Add() using
wxSizerFlags-based overload instead of the one using many individual
parameters.

Also remove an extraneous "not" in the description of its Create()
method.

Closes #24710.
2024-07-22 01:22:42 +02:00
PB 19ec50bfa5 Fix crash on static page of widgets sample
Attempting to change the style or alignment of the static text in the
widgets sample made the sample crash. The bug cause was the same as in
7c125d3 (Fix crash on spin page of widgets sample, 2024-04-18), i.e.,
a8b4753 (Reconnect events to the widget after recreating it in the sample,
2024-02-19).

Fix the issue by calling NotifyWidgetRecreation() for each control only
after they were all recreated.

Closes #24656.

Closes #24660.
2024-07-04 01:29:23 +02:00
PB 73e28e2b65 Update the Windows versions table in wxGetOsVersion() docs
Update Windows Server information.

Additionally, add a note to wxGetOsDescription() source to
keep the table in docs in the sync with the code.

Closes #24653.
2024-07-04 01:17:05 +02:00
PB 2ae0ecdc1d Handle better unknown Windows Server versions in wxGetOsDescription()
If unknown Windows version is encountered and it is a server edition,
report it as such.
2024-06-11 16:51:55 +02:00
PB 371b666172 Fix detecting Windows Server 2022 in wxGetOsDescription()
Windows Server 2022 has build number lower than first Windows 11 build
number (20348 vs 22000), so we cannot use Windows 11 build number to
test for it here.
2024-06-10 22:32:38 +02:00
PB c7c6485c59 Recognize Windows Server 2019 in wxGetOsDescription()
For some reason, testing for Windows Server 2019 was missing there.

Closes #24598.
2024-06-09 12:21:02 +02:00
PB 86e4660ba6 Document all supported styles in wxSpinCtrlDouble docs
Document all available styles, i.e., just like with wxSpinCtrl, list
also wxTE_PROCESS_ENTER and the three text alignment options.

Closes #24488.
2024-04-18 21:15:00 +02:00
PB 7c125d304d Fix recently introduced crash on spin page of widgets sample
Attempting to change the style or alignment of the spin controls in the
widgets sample made the sample crash. This was caused by a8b4753
(Reconnect events to the widget after recreating it in the sample,
2024-02-19) which resulted in using windows that were previously
destroyed.

Fix this by calling NotifyWidgetRecreation() for each spin control only
after they were all recreated.

Closes #24487.
2024-04-18 21:14:20 +02:00
PB 1072397c19 Improve separator lines color in wxListCtrl in Windows dark mode
wxSYS_COLOUR_3DLIGHT was too bright in dark mode, use wxSYS_COLOUR_GRAYTEXT
instead, even if we have to used a different system colour for lines in
light and dark mode.

Closes #23772.
2024-03-25 18:59:18 +01:00
PB a1ab389081 Fix item painting with custom font in wxListCtrl in Windows dark mode
When drawing items by ourselves, we need to use the custom font, if set.

Closes #23807.
2024-03-25 17:16:15 +01:00
PB 0682590195 Fix subitems painting in wxListCtrl in Windows dark mode
When displaying checkboxes, the text position was incorrectly offset
to the right even for subitems, not just for the item where the checkboxes
are actually painted.
2024-03-23 19:28:37 +01:00
PB de943ef95e Fix item selection painting in wxListCtrl in Windows dark mode
The item selection/focus rectangle should include not only the item text
but also the checkbox and image.
2024-03-20 20:50:24 +01:00
PB d15b29f4eb Always paint item selection in wxListCtrl in Windows dark mode
When painting items in wxListCtrl in report view under Windows dark mode,
the selection was painted only when the control had focus.

However, this did not match the light mode, where the selection is always drawn
regardless of the focus (the listview is created with LVS_SHOWSELALWAYS style).
2024-03-20 20:13:45 +01:00
PB 053af21d9b Fix missing checkboxes in wxListCtrl in Windows dark mode
Under Windows dark mode, we paint wxListCtrl in report view by
ourselves and so we need to paint also the checkboxes when needed.

There is a small glitch on Windows 11, where a selected checkbox
has black instead of transparent pixels inside the rounded corners.

Closes #24410.
2024-03-20 20:06:22 +01:00
PB 15b2cc84e1 Remove Windows XP only code path from wxStaticBox code
Windows XP is no longer supported, so remove the code that
is never going to be executed.

Closes #24409.
2024-03-17 18:49:21 +01:00
PB 8c0d23ab65 Fix drawing of wxListCtrl last item in Windows 11 dark mode
Fix coordinates of the rectangle we use to erase the unwanted
separator line in wxListCtrl report view in Windows 11 dark mode.

The rectangle was painted over the last item, instead below it
as intended.

Closes #24024.

Closes #24408.
2024-03-17 18:48:01 +01:00
PB 24952d0203 Fix confusing argument names in wxPersistentWindow docs
Use the same argument name as in the actual code in the class
constructor as well as the convenience function, instead of
wrongly copypasted "book".

See also 33de6dc (Fix confusing wxPersistentTLW ctor argument name,
2023-12-22).

Closes #24158.
2023-12-25 17:11:53 +01:00
PB c8c3932da6 Remove obsolete options from MSVS .props files
Remove the stuff regarding no longer supported MSVS versions,
Itanium CPU architecture, and Windows XP platform toolset.

Closes #24101.
2023-11-30 02:52:25 +01:00
PB 220031c0da Fix buttons missing in widgets sample after recent changes
The Clear log and Exit buttons were not shown after the changes
in a69fabe (Fix using wxStaticBoxSizer in samples, 2023-10-22).

Fix this by creating them with the proper parent.

Closes #24005.

Closes #24007.
2023-10-29 02:47:46 +02:00
PB 4ddea5658d Cover default button in wxDialog::CreateStdDialogButtonSizer docs
Add a note explaining that when creating a button sizer with this
method, one of the buttons will be usually made the default.

See #23992.

Closes #24001.
2023-10-25 23:54:22 +02:00
PB a69fabecb1 Fix using wxStaticBoxSizer in samples
If a control is contained in a wxStaticBoxSizer or its child sizer,
wxStaticBoxSizer::GetStaticBox() should be used as the control's parent.

However, widgets and dialogs samples did not do that, which resulted in
flooding the message log in widgets sample with warnings about this; in
dialogs sample the warnings were shown in the debug output.

Fix this by always using the static box as the control's parent when the
control is contained (directly or indirectly) in a wxStaticBoxSizer.

Closes #23967.
2023-10-22 01:27:55 +02:00
PB cc41fa5458 Improve item sorting in generic wxFileCtrl and wxDirCtrl
To sort its items (files and folders) wxFileCtrl used simple string
compare and wxDirCtrl case-insensitive string compare.

However, the files and folders should be presented to the users in the
way they are used to, i.e., in the natural order. Therefore, use
wxCmpNatural() for file and folder names and wxStricmp() for file
extensions.

Closes #22054.

Closes #23962.
2023-10-22 01:25:56 +02:00
PB b87a7ab9e7 Remove wxNODISCARD from wxBasicString::Get() declaration
Using both wxDEPRECATED_MSG and wxNODISCARD for some reason breaks
compilation with clang (when using C++17 or newer standard).

Since wxBasicString::Get() is deprecated, one warning should be enough
so just remove wxNODISCARD from the method declaration.

Closes #23952.
2023-10-09 09:00:33 +02:00
PB 4efbbce82e Modernize wxGenericDirCtrl appearance on MSW
Change wxTreeCtrl style for a control used by wxGenericDirCtrl so that
wxGenericDirCtrl looks more like the folder view in File Explorer (but
still don't show expanders for root-level items).

Also update wxGenericDirCtrl screenshot in the docs.

See also 6caaf58 (Use more modern appearance for wxMSW wxTreeCtrl by
default, 2023-09-30).

Closes #23922.
2023-10-02 19:32:02 +02:00
PB 5ca3157467 Fix return type of wxBitmap::UseAlpha() under wxMSW
The method should return bool but was returning void.

This commit is best viewed ignoring whitespace-only changes.

Closes #23903, #23919.
2023-09-30 22:32:34 +02:00
PB 6caaf589f1 Use more modern appearance for wxMSW wxTreeCtrl by default
Change wxTreeCtrl default style under wxMSW to make it look more
up-to-date by default: use twisting buttons and full-row highlight and
don't display connector lines.

Using wxTR_LINES_AT_ROOT together with wxTR_NO_LINES may look odd but it
is needed because without wxTR_LINES_AT_ROOT, the buttons would not be
displayed.

Also update wxTreeCtrl screenshot in the docs.

Closes #23844.
2023-09-30 15:00:48 +02:00
PB 081b7c430b Document more macOS-only wxTextCtrl methods
Document previously undocumented macOS methods
enabling/disabling automatic character substitutions.

This should have been part of 90e1769 (Add API to control
OS X wxTextCtrl’s smart behavior, 2016-10-16).

Closes #23889.
2023-09-21 22:59:06 +02:00
PB 8efb1bceda Fix crash due to logging bug in the event sample
The gestures frame created its own log target and deleted
the previous one but did not restore it when being closed.

This left the current log target invalid which led to a crash
when calling any wxLog*() function after gestures frame was closed.

Fix this by restoring the previous log target when gestures frame
is closed.

Closes #23767.

See #23881.
2023-09-21 22:56:49 +02:00
PB 2714bf19df Update screenshot in wxSplitterWindow Overview
Use screenshot of the splitter sample under Windows 11.
2023-08-31 21:56:05 +02:00
PB ae1bf96788 Update screenshots of controls under wxMSW in documentation
In the documentation, replace all the screenshots of various
controls under wxMSW with those on Windows 11 22H2 (light mode).
2023-08-31 21:55:31 +02:00
PB 714103d00d Fix typo in clipboard header files
There was a typo in the class name (wxClipboad) in the
Purpose header.

Closes #23827.
2023-08-26 23:51:58 +02:00
PB 7a3f6b6847 Fix displaying file size in sockets/client sample
When testing downloading with wxURL and header Content-Length
is not available, display "n/a" as the file size instead of
the value of (unsigned long)-1.

Closes #23825.
2023-08-26 23:20:36 +02:00
PB 70bb1824d3 Fix WXWIN_COMPATIBILITY_3_2 check in MSW clipboard code
WXWIN_COMPATIBILITY_* checks must use #if, not #ifdef.

Closes #23822.
2023-08-26 16:52:15 +02:00
PB 10d09ec2b2 Remove outdated parts from build system
Remove support for unsupported MSVS versions earlier than 2015
and Windows versions earlier than 7 from CMake build as they are not
supported any longer.

Also update wxUSE_GRAPHICS_GDIPLUS and wxUSE_GRAPHICS_DIRECT2D comments
in wxMSW setup.h to remove mentions of unsupported Windows XP but do
mention that MinGW-w64 can use Direct2D.

Closes #23787.
2023-08-24 15:15:57 +02:00
PB 811df1e2b0 Update maximum supported compiler versions in main readme
Update maximum supported versions for gcc and clang in the
main readme.

Closes #23792.
2023-08-24 15:05:03 +02:00
PB 547d49f68b Fix typo in wxColourDialog documentation
The code example in wxColourDialog documentation used
a wrong type to create wxColourDialog instance.

Closes #23793.

Closes #23794.
2023-08-24 02:42:39 +02:00
PB af453674b6 Improve wxFileSystem::AddHandler() documentation
The note in the method description incorrectly stated that
"...the handlers are deleted in wxFileSystem's destructor so
that you don't have to care about it." However, unless a
handler is removed by calling wxFileSystem::RemoveHandler()
(or undocumented wxFileSystem::CleanUpHandlers()), it is deleted
only when wxWidgets shuts down in wxFileSystemModule::OnExit().

Update the method documentation that it is correct (and similar to
that of wxImage::AddHandler()).

Closes #23789.
2023-08-24 02:38:51 +02:00
PB 61bae154d3 Improve samples appearance in dark mode
- caret: Use the system color for window background instead of
  hard-coded white.

- image: Use hard-coded black for the text drawing since all other
  drawings on the image canvas use hard-coded colours too. The default
  text colour was barely readable in dark mode.

- joytest: Use wxCYAN_PEN instead of wxBLACK_PEN to ensure the line is
  visible both in light and dark colour system mode.

- ownerdrw: Use such background colour that there is good contrast
  between text and background both in light and dark colour system mode.

- popup: Use such background colour for the pop up so that there is a
  good contrast between text and background both in light and dark
  colour system mode.

Closes #23773.
2023-08-24 02:22:19 +02:00
PB 9536583c0f Improve the combo sample
In the dialog, create the controls put in the static box sizer
with the sizer's static box as the parent instead of the dialog.

Improve appearance of custom drawn items in dark mode.

Closes #23765.
2023-08-23 23:08:52 +02:00
PB ecd01698e7 Document more MSW dark mode limitations
Add that anything using task dialog does not support dark mode.

Mention that most common dialogs do not support dark mode.

Mention that calling wxMenu::Break() will turn the menu light.

Closes #23769.
2023-08-23 23:08:15 +02:00
PB 350222e411 Correct wxBUILD_TESTS CMake build options in unit tests docs
Provide the correct options for wxBUILD_TESTS in the CMake part
of unit tests documentation.

Closes #23745.
2023-07-31 19:18:18 +02:00
PB 81ce7edb75 Improve documentation about parallel builds with MinGW makefile
In the note about building wxWidgets with MinGW makefile and using
parallel build, explain that "-jN" option cannot be used when building
"setup_h" target.

Closes #23642.
2023-06-16 00:01:39 +02:00
PB 241ed70b5b Copy all data files needed by XRC sample when building with CMake
XPM files demonstrating the use of wxBitmapBundle in the XRC files
were not copied when building the XRC sample with CMake.

This should have been part of eaa769a (Use wxBitmapBundle in
wxBitmapComboBox XRC handler, 2022-02-09).

Closes #23612.
2023-06-06 21:18:03 +02:00
PB 885c87d865 Fix storing DXF entities in penguin sample
The code in b76ebc6 switched from wxList to std::vector but the changes
did not account that we must store the pointers to derived classes in
the entity list, not just the struct they derive from.

Closes #23582.
2023-06-02 19:11:11 +02:00
PB c5dc85f398 Remove mentions of no longer supported MSVS versions
The oldest supported MSVS version for wxWidgets 3.3 is 2015,
so remove mentions of limitations of older MSVS versions.

Closes #23508.
2023-04-30 01:17:28 +02:00
PB d378444010 Remove most occurrences of wxT() from the docs
wxT() macro rarely needed now, so do not use it in the docs
unless it is required.
2023-04-09 20:35:49 +02:00
PB 17b25122e2 Update wxToolBar documentation
Remove information relevant only for Pocket PC and also fix a
mistyped word.
2023-04-07 09:51:06 +02:00
PB 02cba46643 Fix memory leak in the art provider sample
The list client data must be destroyed not only when closing the
resource browser dialog (see 754f75c1cd (Fix memory leaks in artprov
sample, 2022-01-28) but also whenever the art client is changed.

Closes #23417.

Closes #23418.
2023-04-04 15:29:37 +02:00
PB 66f685987b Update Czech message catalog
Add missing translations.

Unfuzzy the correct translations and fix the incorrect ones.

See #23235.
2023-02-08 17:37:51 +01:00
PB 87b80995a4 Fix wxFontList::FindOrCreateFont() for pixel and fractional point sizes
wxFontList::FindOrCreateFont() worked properly only for integral point sizes.

Make it work also when a pixel size or fractional point size is used.
2023-01-13 21:41:55 +01:00
PB 42c2cb9936 Improve comments in samples/sample.rc
Provide more information about application manifest, High DPI support,
and contents of wx/msw/wx.rc file.

Use the correct file extension for docs/msw/winxp.md.

Closes #23116.
2023-01-06 00:54:00 +01:00
PB 42079fd43f Add missing #if guard around a variable
The variable declared inside #if guard was used outside such guard
which of course made the build fail.
2022-12-25 18:15:27 +01:00
PB abe6d5a49c Avoid unused variable warning in rich text control code
Declare a variable used only inside #if guard also in the #if guard,
to avoid an unused variable warning.
2022-12-25 17:54:37 +01:00
PB b4a29dfab7 Remove unused variable from the dialogs sample 2022-12-24 12:49:09 +01:00
PB 7629da8e10 Remove unused variables from rich text control code 2022-12-24 12:47:18 +01:00
PB d8fc164a19 Remove unused variable from ribbon toolbar code 2022-12-24 12:46:31 +01:00
PB 1f47d32b65 Remove unused variable in Generic progress dialog code 2022-12-24 12:46:02 +01:00
PB e67532085b Improve wxWidgets naming conventions docs
Fix swapped names for static and shared build folder on Windows
in "type" description.

Also provide more details in some paragraphs.

Closes #23053.
2022-12-23 20:07:50 +01:00
PB 4e54c65264 Fix compiler warnings in wxWebViewEdge code
Initialize member variables in the order they were declared,
use "using" to prevent hiding base class overload, and
add a missing "override" specifier.
2022-12-22 21:34:29 +01:00
PB 08f18292ce Add GUID declaration for ICoreWebView2WebResourceRequestedEventHandler
MinGW does not provide GUID declarations for webview2 COM interfaces,
we must provide them all ourselves.
2022-12-22 21:24:36 +01:00
PB af97f4a735 Regenerate utils makefiles
emulator and execmon were removed, so utils makefiles
must be regenerated from the updated bakefile.
2022-11-20 10:46:26 +01:00
PB 8030d3124a Remove wxWidgets slogan ideas
The slogans are not used.
2022-11-20 10:35:20 +01:00
PB 4a69f36f22 Remove application testing if samples don't crash
Hopefully, we will not need a specialized application testing
whether a sample crashes on start-up or not anymore.
2022-11-20 10:29:39 +01:00
PB 8eca0f0a3a Remove wxEmulator
The devices it was intended for are no longer used.
2022-11-20 10:25:45 +01:00
PB 3c53df1f92 Remove GTK notebook test code
Such code does not need to be a part of wxWidgets repository.
2022-11-20 10:21:45 +01:00
PB 57ab5f5d1a Remove old technical notes
The technical notes were replaced by other documents long time ago.
2022-11-19 21:36:25 +01:00
PB f1985c6ba2 Use [[nodiscard]] with functions returning object to be freed
Add wxNODISCARD macro which is defined as [[nodiscard]] if supported,
or the compiler-specific equivalent if one exists or nothing if not
available.

Start using it for some places with a risk of memory leak.

Closes #22943.
2022-11-09 18:59:44 +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