Commit Graph

66667 Commits

Author SHA1 Message Date
Vadim Zeitlin
773f8f86e3 Merge branch 'svg-misc' of https://github.com/MaartenBent/wxWidgets
Miscellaneous improvements to wxSVGFileDC, notably add gradient fill
support and shape rendering mode.

See https://github.com/wxWidgets/wxWidgets/pull/1493
2019-08-22 17:21:00 +02:00
Vadim Zeitlin
870f03cd15 Handle wxSL_MIN_MAX_LABELS and wxSL_VALUE_LABEL correctly in wxMac
Create the labels corresponding to each style instead of always creating
all 3 of them whenever any of the styles is specified.

See #11427.

Closes https://github.com/wxWidgets/wxWidgets/pull/1495
2019-08-22 17:17:13 +02:00
Olly Betts
5137b8044e Fix flicker in wxGTK wxStyledTextCtrl
Use the same logic for wxGTK (and other platforms using double
buffering) as was already used for wxMac, it seems to result in less
flicker.

Closes #18017.
2019-08-22 14:57:34 +02:00
Vadim Zeitlin
eff6564795 Don't expand environment variables in wxFileName::MakeRelativeTo()
This could have been unexpected even if it worked as designed and,
unlike with direct calls to Normalize(), there was no way to prevent
this from happening.

Worse, even when no expansion was done, the simple fact of calling
wxExpandEnvVars() could result in replacing "dir\$file" with "dir$file"
as the backslash is considered as an escape character by this function
and hence break the file name structure.

Closes #17977.
2019-08-22 14:28:46 +02:00
Vadim Zeitlin
8dc3c38fad Set event object in wxMSW wxTE_RICH control wxContextMenuEvent
Add forgotten SetEventObject() call.

Closes #18460.
2019-08-22 12:44:09 +02:00
Vadim Zeitlin
70f8bf4c86 Just return true from wxString::Shrink()
The comparison of lengths() seems to be completely unnecessary.

Also document that Shrink() always returns true.
2019-08-22 00:04:04 +02:00
Vadim Zeitlin
ea965327eb Add wxString::shrink_to_fit() as synonym for Shrink()
Provide C++11 std::string-compatible method name too.
2019-08-22 00:01:36 +02:00
Vadim Zeitlin
2dbdbe1927 Merge branch 'mac-opengl-resize'
Really fix Mac wxGLCanvas resize under macOS 10.14.5.

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

Closes #18402.
2019-08-21 23:53:27 +02:00
Vadim Zeitlin
fe56ef557f Merge branch 'wxwindow-getdpi' of https://github.com/MaartenBent/wxWidgets
Add wxWindow::GetDPI() for per-monitor DPI support.

See https://github.com/wxWidgets/wxWidgets/pull/1494
2019-08-21 23:44:19 +02:00
Maarten Bent
bee6168076 Make wxSVGFileDC function parameter names consistent with wxDC 2019-08-21 22:33:36 +02:00
Maarten Bent
72ce980d1e Rename wxSVGFileDC anonymous functions 2019-08-21 22:33:36 +02:00
Maarten Bent
0b728d1bea Use base version of DrawCheckMark directly in wxSVGFileDC 2019-08-21 22:33:36 +02:00
Maarten Bent
75486529e3 Process review comments in wxSVGFileDC 2019-08-21 22:33:35 +02:00
Maarten Bent
5b37d32c50 Use the wxWindow DPI in FromDIP, ToDIP and GetContentScaleFactor 2019-08-21 19:43:42 +02:00
Maarten Bent
9c193e1774 Add wxWindow::GetDPI()
This is simpler to use than wxDisplay(window).GetPPI() which was used
instead of it so far in all ports and can be implemented more
efficiently for wxMSW.

Remove wxGetWinTLW, GetDPI already tries to get the top window.
2019-08-21 19:30:07 +02:00
Vadim Zeitlin
b686d77aaf Fix font height handling in MSW wxNativeFontInfo::FromString()
This is similar to 228cd926e2, but extends
the fix to v1 strings, as even though they have the "point size" field,
this field may still contain 0, resulting in the same problem as with v0
strings, i.e. 0-sized fonts.

Closes #18467.
2019-08-21 14:21:11 +02:00
Maarten Bent
64be484db2 Use pen width 1 for DrawPoint in wxSVGFileDC
This is consistent with other DCs.
2019-08-20 20:21:06 +02:00
Maarten Bent
dfe76430cc Implement GradientFillLinear and GradientFillConcentric for wxSVGFileDC 2019-08-20 20:21:05 +02:00
Maarten Bent
26b273bef9 Fix RTTI class declarations of wxSVGFileDC
wxIMPLEMENT_DYNAMIC_CLASS requires a default constructor (no filename). Check
if m_outfile is initialized with a valid filename before using it.
2019-08-20 20:21:05 +02:00
Maarten Bent
a41a8ded79 Allow to set wxSVGFileDC shape rendering mode 2019-08-20 20:21:05 +02:00
Maarten Bent
75f08dfd51 Use floating point positions in wxSVGFileDC DrawRotatedText and DrawEllipse 2019-08-20 20:21:05 +02:00
Maarten Bent
9412aea1f6 Implement wxBRUSHSTYLE_BDIAGONAL_HATCH for wxSVGFileDC
Create new graphics group before writing brush pattern, so pattern appears in
the same group as the elements using it.
2019-08-20 20:21:04 +02:00
Maarten Bent
e7c03a5646 Use const references in SVG helper functions
Add helper function to get pen style.
Use Col2SVG for wxBrush colours.
2019-08-20 20:21:04 +02:00
Maarten Bent
215f844502 Improve whitespace formatting in generated SVG
Write coordinates first, then styles.
2019-08-20 20:21:04 +02:00
Vadim Zeitlin
05402e9eac Merge branch 'stcacscroll' of https://github.com/NewPagodi/wxWidgets
More fixes for wxSTC auto-completion popup window, notably send the
scroll events to the correct window.

See https://github.com/wxWidgets/wxWidgets/pull/1482
2019-08-20 19:56:01 +02:00
Daniel Kulp
6974a6ceaa Really fix problems with wxGLCanvas resizing under macOS 10.14.5
This is a better fix for the problem with NSOpenGLView having wrong size
after resizing the window under 10.14.5 (only): reset the context when
making the context current, to ensure that the up-to-date size is used.

See #18402.
2019-08-20 19:44:07 +02:00
Vadim Zeitlin
70f0900799 Use white background when rendering print preview
Explicitly use the white brush when erasing background of the bitmap
used for print preview, to match the printed page appearance. Somehow it
worked even without this under other platforms before, but logically
resulted in black background under wxGTK 3.

Closes https://github.com/wxWidgets/wxWidgets/pull/1476

Closes #18371.
2019-08-20 17:37:22 +02:00
Vadim Zeitlin
72272f5901 Document that 3rd person verb forms should be used in the manual
See https://github.com/wxWidgets/wxWidgets/pull/1473
2019-08-20 17:16:53 +02:00
Vadim Zeitlin
fbe651731c Fix problems with documentation HOWTO syntax highlighting
Use backticks to prevent "_" and "*" from being interpreted as special
Markdown characters.

No real changes.
2019-08-20 17:11:37 +02:00
Vadim Zeitlin
346d7c378d Merge branch 'arrstr-doc' of https://github.com/PBfordev/wxWidgets
Improve wxArrayString documentation.

See https://github.com/wxWidgets/wxWidgets/pull/1473
2019-08-20 17:04:54 +02:00
Vadim Zeitlin
8b7888b20b Remove unnecessary wx/display.h inclusion
This should have been done in a15004fc5f.

See https://github.com/wxWidgets/wxWidgets/pull/1246
2019-08-20 16:08:00 +02:00
Brian Clark
ee0cffe9bf Handle the fact that, in OSX 10.15 (Catalina) some osx controls newly respond to the contentView selector and return nil. (#1487)
This has the effect of suppressing wxEVT_PAINT events, because the rectangle in which to draw/paint is calculated incorrectly.
2019-08-20 14:03:13 +02:00
Vadim Zeitlin
6096bff66b Merge branch 'memorydc-font'
Initialize wxMemoryDC with a default font and fix a bug in text extent
computations under MSW that doing this uncovered.

See https://github.com/wxWidgets/wxWidgets/pull/1484
2019-08-20 13:46:36 +02:00
Vadim Zeitlin
002492f932 Use iterators for string iteration instead of indices
This is much more efficient when using UTF-8 representation internally.

No real changes, just an optimization.
2019-08-20 13:45:53 +02:00
Maarten Bent
d10ed0b991 Implement wxPolygonFillMode in GDI+ and D2D graphics contexts
Honour "fillStyle" parameter, which was previously ignored.

Closes https://github.com/wxWidgets/wxWidgets/pull/1478
2019-08-20 13:32:29 +02:00
Vadim Zeitlin
4b227835ac Merge branch 'svg-drawtext' of https://github.com/MaartenBent/wxWidgets
Fixes and improvements to wxSVGFileDC::Draw[Rotated]Text().

See https://github.com/wxWidgets/wxWidgets/pull/1466
2019-08-20 13:27:26 +02:00
Vadim Zeitlin
ffd424debb Merge branch 'mswdc-draw-point-checkbox' of https://github.com/MaartenBent/wxWidgets
Draw the same shape in wxDC::DrawCheckMark() under all platforms and
provide wxRenderer::DrawCheckMark() for drawing the platform-specific
shape.

Also fix wxGCDC::DrawPoint() to use the default one point wide pen.

See https://github.com/wxWidgets/wxWidgets/pull/1471
2019-08-20 13:25:28 +02:00
Vadim Zeitlin
23d43a6e55 Comment out the post-#endif comment
Even though both MSVC and gcc seem to silently ignore everything coming
after "#endif", it's still wrong to have anything but a comment after
it.

See commit 881aabf63e
2019-08-20 13:04:26 +02:00
Vadim Zeitlin
c2e6b86786 Add WX_IS_MACOS_AVAILABLE_FULL availability check macro
We could change WX_IS_MACOS_AVAILABLE itself to be a variadic macro, but
this would be significantly more complex and doesn't seem warranted.
2019-08-20 11:14:10 +02:00
Vadim Zeitlin
1d63c8b11d Fix typo in a comment
No real changes.
2019-08-20 11:10:57 +02:00
Vadim Zeitlin
13f086b5d0 Revert "Work around problems with wxGLCanvas resizing under macOS 10.14.5"
This reverts commit ea68934b8e as it
didn't fix the problem in all cases -- an alternative fix will replace
it in the upcoming commits.
2019-08-20 11:10:06 +02:00
Artur Wieczorek
881aabf63e Fix dismissing wxComboCtrl popup
When wxComboCtrl popup window is dismissed we need to hide it but calling ShowWindow() Win API directly from WM_ACTIVATE event handler causes some side effects like calling the handler again (under Win 7) or setting the focus improperly (under Win 10). To avoid these problems we should postpone hiding.

Closes #18376.
2019-08-18 19:53:41 +02:00
Paul Cornett
bcca16911d Build fix after b200c661ed
A file was missing from the commit
2019-08-15 17:42:28 -07:00
Paul Cornett
b200c661ed Fix wxPropertyGrid headers so they can be compiled independently
See #18465
2019-08-15 17:27:07 -07:00
Paul Cornett
6549d4c3c5 Fix wxDC::Clear() with transparent brush on GTK2
See #10273
2019-08-15 17:14:31 -07:00
Maarten Bent
533d82655f Remove CppUnit boilerplate and macros from ellipsization tests 2019-08-14 21:03:48 +02:00
Maarten Bent
b245e4a571 Use dynamic widths in ellipsization tests so they will work for any font size 2019-08-14 21:02:33 +02:00
Maarten Bent
028458edbb Fix tab width in MSW GetPartialTextExtents
The width of \t determined by GetTextExtentExPoint is 0. Determine the actual
width using DoGetTextExtent and update the widths accordingly.
2019-08-14 20:38:36 +02:00
Maarten Bent
2508efdd6e Initialize wxMemoryDC with a default font 2019-08-13 22:15:57 +02:00
Maarten Bent
4dc5eb9a54 Use default wxPen for DrawPoint in wxGCDC
Match the default wxDC implementations by using a default wxPen with width 1,
wxPENSTYLE_SOLID and default join and cap values.
2019-08-11 22:24:56 +02:00