Commit Graph
1594 Commits
Author SHA1 Message Date
Vadim Zeitlin 5ccdcd6b2a Update version to 3.3.4
Run misc/scripts/inc_release, update version.bkl and rebake.
2026-07-09 15:08:08 +02:00
ihtandVadim Zeitlin f5cb9a66c0 Update wxwidgets.props and common.bkl for VS 2026
This is in line with the changes in a0f5c92b96 and 3d88038d01
2026-05-12 16:29:03 +02:00
Vadim Zeitlin edefb4475e Update version to 3.3.3
Run misc/scripts/inc_release and rebake and rerun autoconf.
2026-03-04 19:40:20 +01:00
PBandVadim Zeitlin 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
RandalphwaandVadim Zeitlin 6228eaf449 Add support for using LunaSVG for SVG rasterization
Optionally use LunaSVG library from the new submodule instead of
NanoSVG.

Closes #25902.
2026-01-18 00:48:57 +01:00
Vadim Zeitlin 0a6523c4d9 Update copyright years to 2025
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 24.04 wxGTK 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 / 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
Just run misc/scripts/inc_year and commit the results.

See #18690.
2026-01-01 17:40:18 +01:00
Vadim Zeitlin 3b7ce8e9a7 Increment version to 3.3.2
Rebake all generated files.
2025-07-25 00:29:00 +02:00
Vadim Zeitlin 29f9d3512a Update version to 3.3.1 and rebake 2025-06-09 22:36:35 +02:00
Vadim Zeitlin d1710a6a5c Add MSVS 2022 solution for building wxrc too
At the time of cfe4a10995 (Add manually created MSVS 201x solutions
files for wxrc, 2019-01-07) MSVS 2022 wasn't released yet, but now it
does, so add a solution for it too.
2025-05-21 18:14:08 +02:00
Vadim Zeitlin 74a1498eee Remove unnecessary use of wxLogXXX("%s")
Just pass the strings directly to wxLogXXX functions as this works
correctly after the changes of the parent commit.
2025-05-17 22:44:48 +02:00
Maarten Bent fd14294606 Recreate build-files 2025-05-10 18:22:27 +02:00
Blake-MaddenandVadim Zeitlin 0026505c35 DPI fixes in samples and sizer overview
Remove redundant 5 arguments to wxSizerFlags::Border() and replace
Border(10) with DoubleBorder().

Add FromDIP in other places.

Closes #25148.
2025-02-12 18:09:41 +01:00
Vadim Zeitlin 71c7599cd9 Recognize "current" and "pressed" wxBitmapButton buttons too
Recognize not only the old "hover" and "selected" names, but the new and
recommended ones too in wxrc.

Closes #25114.
2025-01-31 19:32:24 +01:00
Vadim Zeitlin 981341c913 Update copyright years to 2025
Just run misc/scripts/inc_year and commit the results.

See #18690, #25041.
2025-01-06 22:16:06 +01:00
Lauri Nurmi fe18212385 Do not use !str for checking wxString emptiness
While wxString::operator!() is a documented alternative to .empty() since
25 years, using it in just a handful of places in the codebase is not
consistent.

!str is arguably not very readable either, because std::string does not
have such an operator, and neither does e.g. Qt's QString. People would
generally except ! in the context of any kind of strings to check for null
pointer (char*), or an optional with a missing value (std::optional).
2024-09-12 10:05:33 +03:00
Steffen OlszewskiandVadim Zeitlin 3737245c51 Fix linking multiple wxrc-generated files together
Each generated C++ file contains the global helper function `void
XRC_ADD_FILE(...)`, this results in a linker error when multiple of such
generated files are linked into a single executable.

Give this function internal linkage instead to prevent this error.

Closes #24744.
2024-08-01 14:15:46 +02:00
Maarten Bent f0cca189ff Rebake after GDI+ and msimg32 changes 2024-06-22 13:51:39 +02:00
DoctorNoobingstoneIPresumeandVadim Zeitlin 2d3f89109f wxrc: Generate C++ code which is faster to compile and smaller
Avoiding performing the conversions from "const wxChar*" to wxString in
all places where XRC_ADD_FILE is used and doing it in just a single
function allows to significantly reduce both the compilation time and
the size of the generated machine code.

Also add a simple script allowing to generate the XRC file that can be
used to test this improvement.

Closes #24579.
2024-06-09 01:50:29 +02:00
Vadim Zeitlin 3c41a6876c Don't use manual memory management in wxrc
Use std::unique_ptr<> instead of manually deleting the object and
std::vector<> instead of manually allocating and deleting the buffers.

No real changes.
2024-05-23 01:59:32 +02:00
DoctorNoobingstoneIPresumeandVadim Zeitlin a01c470ae1 Fix handling file names with "%" in their names in wxrc
In the original code:

```
s.Printf(wxFileNameFromPath(parOutput) + wxT("$%03i-") + name2, i);
```

if `wxFileNameFromPath(parOutput2)` or `name2` had contained `'%'`
(format specifiers), the results would have been bad.

These strings are now given as additional arguments to `Printf`
(corresponding to `"%s"` format specifiers), and the format string
argument itself is now constant.

Closes #24547.
2024-05-23 01:55:34 +02:00
DoctorNoobingstoneIPresumeandVadim Zeitlin e9b0bd5cc7 Limit size of resource files processed by wxrc to 4GiB
Make the behaviour consistent on all platforms and disallow huge files
everywhere instead of only doing it on 32-bit platforms: in practice,
there should be never any need for the resource files of such size.

Closes #24546.
2024-05-23 01:54:35 +02:00
Vadim Zeitlin c656afabfe Simplify wxrc code by removing broken support for multiple bases
This code was added back in aac18ec71e (generate ctors with optional
parent parameters in C++ code (patch 1238355), 2006-05-06) but
apparently never worked, as it generated uncompilable code if it was
executed (see #24383) and doesn't seem to make any sense as the name of
the class defined in XRC can never be "wxMenu" or any other of the
already existing wx classes.

Revert this to simplify the code.

See #7433.

Closes #24422.
2024-03-22 17:44:00 +01:00
Vadim Zeitlin c45c1e5462 Use -rpath for utils too and not only samples
And get rid of SAMPLES_RPATH_FLAG and just use DYLIB_RPATH_FLAG, as it's
not at all sample-specific.

This notably allows running wxrc from the build tree without setting
LD_LIBRARY_PATH under Linux.

Closes #24384.
2024-03-09 20:30:52 +01:00
DoctorNoobingstoneIPresumeandVadim Zeitlin ccc64326fc Compilation fix for ifacecheck
Include wx/hashmap.h in utils/ifacecheck/xmlparser.h itself instead of
relying in the including file to do it because ifacecheck.cpp did not.

Closes #24359.
2024-02-29 03:26:19 +01:00
Vadim Zeitlin 9a27e206ce Rebake after adding 32-bit ARM support for MSVC
This should have been done in 99bc43cefe (Introduce minimal MSW ARM
support, 2024-01-15).

See #24222.
2024-02-24 20:50:38 +01:00
Vadim Zeitlin c14c652238 Rebake after wxWebViewChromium merge
No real changes, just rebake all the makefiles after the addition of
wxwin.extraLdflags, which results in an extra space even when these
flags are empty in webview-chromium branch.

This should have been done in f37401dde3 (Merge branch
'webview-chromium', 2024-01-19)
2024-02-24 20:46:51 +01:00
Blake-MaddenandVadim Zeitlin 2c1cdf9c02 Fix typos and repeated words in comments and documentation
Closes #24085.
2023-11-30 02:21:34 +01:00
Vadim Zeitlin e43f913313 Remove all blank "Modified by:" lines from top comment blocks
Having this line is not useful at all as it doesn't contain any
information and shouldn't be filled in the future as git-shortlog can
provide the information about people who changed the given file more
more reliably than consulting the comments in any case.

Keep the non-blank lines for historical purposes.
2023-10-22 01:22:48 +02:00
Vadim Zeitlin 45dc55b047 Merge branch 'wxrc-multi-bitmap'
Support multiple bitmaps in <bitmap> elements in wxrc.

See #23795.
2023-08-24 02:51:51 +02:00
Vadim Zeitlin 9e8ab658fe Add MSVS 2022 solution file for wxrc too
Add another manually created solution file, after adding the solutions
for MSVS 2017 and 2019 in cfe4a10995 (Add manually created MSVS 201x
solutions files for wxrc, 2019-01-07) to make it possible to build wxrc
with MSVS 2022 easily too.
2023-08-23 23:24:40 +02:00
Vadim Zeitlin ab88fecdc5 Add support for multi-resolution bitmaps to wxrc
Handle multiple semicolon-separated paths in <bitmap> elements which are
used to provide several versions of the same bitmap in different
resolutions.

This commit is best viewed ignoring whitespace-only changes.
2023-08-23 18:03:03 +02:00
Vadim Zeitlin 13d8adb4e1 Improve error reporting for IO errors in wxrc
Notably, give a clear error if an input file is not found and also check
that the temporary output file could have been written successfully.

Still continue handling the other files even if some of them couldn't be
found in order to give all errors at once if there is more than one
missing file.
2023-08-23 17:58:48 +02:00
Vadim Zeitlin ec4777bbbf Rebake after the previous commit
This just separates the automatically-generated changes from the manual
ones in the parent commit.
2023-07-29 18:13:29 +02:00
Vadim Zeitlin b692eaa112 Avoid missing initializer warnings in wxrc
Just suppress the warnings because adding all the missing initializers
would make the command line initialization less readable for no real
gain.
2023-07-03 20:55:18 +02:00
Vadim Zeitlin ae13d70ddc Merge branch 'use-std-hash'
Use std::unordered_foo instead of wx hash maps.

See #23462.
2023-04-18 14:38:12 +02:00
Vadim Zeitlin 22acc3f67d Use std::unordered_set<> in wxrc code
Replace a macro-based synonym with the standard container itself.

Also use range for loop for iteration over it.
2023-04-18 00:54:12 +02:00
Vadim Zeitlin d03fc649ab Generate code using nullptr instead of NULL in wxrc
There doesn't seem to be any reason to keep compatibility with C++98
here, so use nullptr for consistency.
2023-04-17 18:38:03 +02:00
Vadim Zeitlin ae2e0f41b5 Stop defining wxArrayStringBase in STL build
It seems to be completely unnecessary, just use wxBaseArray<wxString>
directly.

Also remove some very old mention of wxArrayStringBase from ifacecheck
which is surely not needed any longer now (and probably wasn't since
quite some time already).

No real changes.
2023-04-08 20:18:58 +02:00
Maarten Bent b0385e498c Rebake after bakefile changes 2023-02-14 22:52:26 +01:00
Vadim Zeitlin b7f24a65d8 Rebake after the copyright year update
This should have been part of f5daf28932 (Update copyright years to
2023, 2023-01-03).
2023-01-03 18:39:06 +01:00
Vadim Zeitlin d0af75e88d Merge branch 'use-template-for-vararg-funcs'
Use variadic templates for implementing the vararg functions.

See #22981.
2022-11-26 16:53:41 +01:00
Vadim Zeitlin 31fba462d2 Don't use wxPrintf() without format arguments
It could have been replaced with just wxPuts(), but using format
specifiers here instead of constructing the message by concatenating the
pieces makes the code more readable, so do this instead.

This avoids another warning about insecure format string use.
2022-11-23 03:17:39 +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 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
Vadim Zeitlin a588e9a20e Don't use non-existent template class name in a comment
Try to avoid confusing people looking at this comment by not referring
to a template class which doesn't exist any longer.

No real changes.
2022-10-28 21:17:15 +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 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 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