Commit Graph

4166 Commits

Author SHA1 Message Date
Vadim Zeitlin
1799922d0e Implement EmptyUndoBuffer() for wxTextCtrl in wxMSW too
The relevant code was already present in MSWCreateText(), so just
extract it into its own function.
2021-08-20 16:58:38 +01:00
Dan Korn
3c9bb69d6e Add wxTextCtrl::EmptyUndoBuffer()
This is implemented for multi-line controls under macOS only currently.
2021-08-20 17:27:51 +02:00
Tobias Taschner
a756ed93c2 wxWebViewEdge: Improve wxEVT_WEBVIEW_LOADED
Previously the edge event ContentLoading was used which was
triggered earlier than DOMContentLoaded. This event wasn't
available in earlier SDK versions.

Minimum required SDK version is now:
1.0.705.50 (Released 2021-01-25)

Fixes #19202

See https://github.com/wxWidgets/wxWidgets/pull/2468
2021-08-17 23:50:13 +02:00
Blake Madden
cb6db10199 Small typos in docs 2021-08-15 08:03:37 -04:00
Vadim Zeitlin
7b5783e4f8 Restore accidentally removed EVT_GRID_CMD_RANGE_SELECT macro
This was removed in 415f080c80 (Split wxGrid RANGE_SELECT event into
SELECTING and SELECTED, 2020-07-27) without preserving it for
compatibility. Do define it now, just as it was done for the non-CMD
equivalent of this macro EVT_GRID_RANGE_SELECT.

Also update the documentation to fix a typo from e2f316b19d (Mention
that wxEVT_GRID_RANGE_SELECT{ED,ING} are new in 3.1.5, 2020-08-18).
2021-08-14 01:10:14 +02:00
Vadim Zeitlin
dc9dc39970 Fix typos and formatting in wxRegEx incompatibilities section
Double the backslashes to prevent Doxygen from interpreting them as
commands and remove a redundant word.
2021-08-04 21:19:14 +01:00
Vadim Zeitlin
09cbec0373 Allow calling wxListCtrl::SetImageList() before Create() in wxMSW
This already worked with the generic version, but silently failed with
wxMSW, so make it work with wxMSW too as it doesn't cost much and makes
wxListCtrl behave in the same way under all platforms.

Also document that SetImageList() can be used before the window is
created.
2021-08-04 21:09:04 +01:00
Vadim Zeitlin
ef21046c2c Document more incompatibilities between PCRE and old wxRegEx
Also try to make the reference to this documentation in the change log
more clear.
2021-08-04 01:36:46 +02:00
Vadim Zeitlin
b7c2918bf1 Document that Refresh() always erases background in non-MSW ports
The distinction between redrawing the background and the rest of the
window only exists in MSW and we can't refresh the window without
refreshing its background in the other ports, but we can at least
document this.

Closes #19234.
2021-07-28 01:25:51 +02:00
Vadim Zeitlin
3415325f4f Add wxRegEx::GetLibraryVersionInfo()
This allows to check the version of PCRE used.
2021-07-24 19:17:59 +02:00
Vadim Zeitlin
fa59d5700a Implement wxRegEx using PCRE
Adjust the tests and document the incompatibilities with the previously
used regex syntax.

In this commit the use of PCRE is conditional on wxUSE_PCRE which is
never defined as 1 yet, so the new code is still disabled.
2021-07-24 19:17:58 +02:00
Vadim Zeitlin
4186292e11 Improve wxIMPLEMENT_APP() documentation
Explain that this macro defines the application entry point.

Also document wxIMPLEMENT_WXWIN_MAIN which wasn't documented at all
previously.
2021-07-24 17:21:39 +01:00
Vadim Zeitlin
83396e54b5 Extend and improve wxSizer::SetSizeHints() documentation
Notably explicitly mention that the parameter of this method does not
need to be the window using this sizer.
2021-07-24 17:21:39 +01:00
Vadim Zeitlin
304d5e6c59 Merge branch 'regex-prepare-pcre'
Cleanup and simplify wxRegEx code.

See https://github.com/wxWidgets/wxWidgets/pull/2437
2021-07-17 17:13:38 +02:00
Vadim Zeitlin
fa1f7e74ce Merge branch 'deprecate-filename-normalize'
Deprecate wxFilename::Normalize() without flags and add convenient
GetAbsolutePath() to be used instead.

See https://github.com/wxWidgets/wxWidgets/pull/2428
2021-07-17 17:10:40 +02:00
Vadim Zeitlin
f41564a3e2 Add wxRegEx::ConvertFromBasic() helper
This will be used to implement support for BREs using PCRE which doesn't
support them directly in the upcoming commits.
2021-07-15 22:45:29 +02:00
Vadim Zeitlin
7843c99d5b Make wxRescaleCoord() private functions
They're probably not that useful in application code, which should just
use wxDPIChangedEvent::Scale() instead, so move them to a private
header instead of making them part of the public API.
2021-07-13 23:05:16 +01:00
Vadim Zeitlin
3787f55a6b Add wxDPIChangedEvent::Scale() and use it in this event handlers
This is more concise and less error-prone than multiplying/dividing DPI
values manually.

No real changes except, maybe, in wxSlider code where the rounding was
done differently before for some reason.
2021-07-13 23:05:16 +01:00
Vadim Zeitlin
453468f2f9 Add wxRescaleCoord() helper and use it
No real changes, just make the code a bit shorter and more clear by
using a dedicated function rather than wxMulDivInt32() directly.
2021-07-13 23:05:16 +01:00
Vadim Zeitlin
7c6f290995 Document wxMulDivInt32() and add a test for it
This function exists since always and is probably already used outside
wx, so make it officially public and add at least a trivial unit test
for it.
2021-07-13 23:05:16 +01:00
Vadim Zeitlin
f37d449208 Add convenient wxFileName::GetAbsolutePath() wrapper and use it
This wrapper simply combines the calls to MakeAbsolute() and
GetFullPath(), but using it results in shorter and more clear code, so
it seems to be worth having.
2021-07-11 14:51:31 +01:00
Vadim Zeitlin
702c221901 Deprecate wxPATH_NORM_ALL and Normalize() with default flags
Using wxFileName::Normalize() with default flags could be surprising and
result in bugs in the code, as shown by our own wrong use of it in
wxFileSystemWatcher corrected in the previous commit.

Deprecate using it without any flags and recommend using MakeAbsolute()
instead.

Also improve the related parts of the documentation.
2021-07-11 14:51:31 +01:00
Vadim Zeitlin
1f2413c461 Improve wxPATH_NORM_LONG documentation
Notably mention that this flag is obsolete.
2021-07-11 14:51:31 +01:00
Vadim Zeitlin
7a8f2dffbd Use standard [[deprecated]] attribute if available
Add yet another wxDEPRECATED_XXX macro, this one simply expanding to
C++14 [[deprecated]] attribute if it's available and nothing otherwise.

It's a bit ridiculous to have so many different macros for deprecating
things, but the new one is useful because the standard attribute can be
used to deprecated enum elements, which is impossible with MSVC-specific
__declspec(deprecated).
2021-07-11 14:47:47 +02:00
Marc Jessome
a052557af3 Add wxKeyEvent::IsAutoRepeat()
The new method is currently supported in Qt, Cocoa, MSW ports (i.e. all
major ones except for wxGTK).

Keyboard example updated with a "Repeat" column.

Closes https://github.com/wxWidgets/wxWidgets/pull/2414
2021-07-06 12:58:05 +01:00
Artur Wieczorek
6bd396b38a Update wxDC::DrawSpline() documentation
Mention that drawn spline is not an interpolating curve.
2021-07-03 17:18:04 +02:00
Artur Wieczorek
b35d595e5d Check that number of points passed to wxDC::DrawSpline() is at least 2
DoDrawSpline() implementations for all ports work for the number of points
>= 2 (for 2 points there is drawn a straight line) so we need to add checks
whether this requirement is met.

See #19172.
2021-06-30 22:24:28 +02:00
Artur Wieczorek
a3988c8db6 Implement getting/releasing HDC in Cairo wxGraphicsContext (wxMSW) 2021-06-28 00:19:15 +02:00
Artur Wieczorek
dd7bcbd9eb Implement getting/releasing HDC in Direct2D wxGraphicsContext
See #19207.
2021-06-28 00:18:16 +02:00
Artur Wieczorek
ffc7c036f1 Fix acquiring HDC from wxGCDC with non-GDI+ graphics context
HDC can be acquired/released only when wxGCDC is associated with GDI+
graphics context.

Closes #19207.
2021-06-24 19:50:29 +02:00
Vadim Zeitlin
f1d84277b4 Merge branch 'nicer-boxsizer-asserts'
Improve the error messages by indicating what should be done to avoid
the asserts and provide a way to disable them if really needed.

See https://github.com/wxWidgets/wxWidgets/pull/2375
2021-05-31 15:18:37 +02:00
Vadim Zeitlin
58cbad1bc9 Merge branch 'im/doxyfix2' of https://github.com/imciner2/wxWidgets
Fix various documentation problems.

See https://github.com/wxWidgets/wxWidgets/pull/2367
2021-05-31 15:16:43 +02:00
Vadim Zeitlin
37af51c513 Document that wxDC::DrawSpline() requires at least 3 points
This is the case for wxMSW implementation and while the other ones seem
to accept 1 or 2 points too, document the most stringent requirement,
especially because not satisfying it results not "just" in assertion
failure, but also in a crash in wxMSW.

This should obviously be improved further by, at the very least, using
wxCHECK and not wxASSERT in wxMSW code or, maybe, actually handling the
degenerate cases there if all the other ports really support them.

See #19172.
2021-05-27 23:45:02 +02:00
Vadim Zeitlin
17bc510995 Document when values used with wxDataViewCtrl must be non-null
Explicitly document that wxDataViewRenderer::SetValue() is never called
with null values (if we ever really need this, we should add a separate
ClearValue() method) and also document that MakeHighlighted() both
receives and must return a non-null value (the latter is required
because the returned value is passed to SetValue()).

See #18934.
2021-05-24 15:18:18 +02:00
Vadim Zeitlin
0b20b97704 Merge branch 'spinctrl-digits'
Improve setting the number of digits in wxSpinCtrlDouble and make it
consistent on all platforms.

See https://github.com/wxWidgets/wxWidgets/pull/2348

Closes #17085.
2021-05-22 21:25:32 +01:00
Ian McInerney
b9d9ba46ce Fix doxygen page linking bugs 2021-05-21 02:58:57 +01:00
Ian McInerney
33c1088aad Escape the HTML tags in the doxygen comments 2021-05-21 02:26:31 +01:00
Ian McInerney
4bb1fe8e0a Fix doxygen section bugs 2021-05-21 02:26:24 +01:00
Ian McInerney
36ae759b7c Fix doxygen misplaced div warnings 2021-05-21 02:09:56 +01:00
Ian McInerney
c628ffdfff Don't specify the @def for defines
This isn't needed when the comment comes right before the define,
and also in newer doxygen versions it causes the __WXDEBUG__ macro
to be not documented because it interprets @def __WXDEBUG__ as being
the WXDEBUG macro instead.
2021-05-21 01:57:54 +01:00
Ian McInerney
b084271a1a Fix grouping warning on newer doxygen
Newer doxygen wants the bracket in its own line and not in the
comment for the enum.
2021-05-21 01:56:39 +01:00
Vadim Zeitlin
1d6c740f3b Disable sizer flag checks if WXSUPPRESS_SIZER_FLAGS_CHECK is set
This provides a less intrusive, and also usable by the end users rather
than only by the developers, way of doing the same thing as the just
added wxSizerFlags::DisableConsistencyChecks() does.
2021-05-20 13:27:08 +01:00
Vadim Zeitlin
2e289d7231 Add wxSizerFlags::DisableConsistencyChecks()
This allows to (hopefully temporarily) disable size flag check asserts.
2021-05-20 13:27:06 +01:00
Ian McInerney
c2d176e4a3 interface: Remove redundant definition of wxPenInfo::LowQuality 2021-05-13 21:33:06 +01:00
Ian McInerney
8482b50129 Fix interface return type for MSWSetTabStops 2021-05-13 21:32:22 +01:00
Ian McInerney
1688429249 Ensure the return documentation is on the correct function
UnreserveId doesn't return anything, and the documentation for the
boolean return in wxFileDialog should be on Create not the constructor.
2021-05-13 21:32:22 +01:00
PB
99bcb29fce Remove wxGTK1 mentions from the documentation
GTK1 is no longer supported, so do not document control limitations when using it.
2021-05-13 06:52:09 -07:00
Ian McInerney
363216ab29 Readd accidentally deleted argument in wxConfig interface
This missing argument was removed in 0c837e5310
and causes the doxygen docs for wxConfigBase to be incorrect and miss
a lot of functions.
2021-05-13 06:49:31 -07:00
PB
6716fcd097 Update note about enabling OpenGL support on Windows 2021-05-05 20:56:05 +02:00
Vadim Zeitlin
4a08c5f965 Document wxWebView backend name constants
Mention the constants that are used to identify the backends.

Closes #19168.
2021-05-01 14:25:18 +02:00