Commit Graph

66674 Commits

Author SHA1 Message Date
Jeff Davidson
04dfe90e55 Fix wxWindow::setBackgroundColour(wxNullColour) on OS X
Commit 91aa6ba36e introduced a
regression causing this to crash. We need to validate that the color
is valid before attempting to call OSXGetNSColor; if it is not, we
should clear any previously-set background color.

Closes #18470.

Closes https://github.com/wxWidgets/wxWidgets/pull/1503
2019-08-24 21:04:47 +02:00
Artur Wieczorek
70e9dbd756 Make wxComboCtrl a wxCompositeWindow
wxComboCtrl consists of several controls (text entry, button, popup) and therefore should be implemented as a wxCompositeWindow to prevent problems with generating spurious events when e.g. focus is transferred between the sub-controls.

Closes #18394.
2019-08-23 22:55:05 +02:00
Vadim Zeitlin
a47d16dc9f Document that wxTreeCtrl::ScrollTo() doesn't work when frozen
Also mention that EnsureVisible() does work in this case.

See #18435.
2019-08-23 17:23:22 +02:00
oneeyeman1
78c3ef2ebb Implement support for wxFD_NO_FOLLOW in wxMac
Disable aliases resolving in standard file dialogs if this flag is
specified.

Closes https://github.com/wxWidgets/wxWidgets/pull/1479
2019-08-22 23:27:54 +02:00
Rutger van Eerd
0861f6504b Scale maximum value in wxProgressDialog::SetMaximum() too
MSW-specific scaling was done for the initial maximum value in Create(),
but not if the maximum was changed later in SetMaximum(). Now do it
there as well.

Closes https://github.com/wxWidgets/wxWidgets/pull/1497
2019-08-22 23:27:54 +02:00
Stefan Csomor
b822e9efe8 running OpenGL fix only when really needed
(second attempt)
2019-08-22 19:03:18 +02:00
Stefan Csomor
e6ae83c386 running OpenGL fix only when really needed 2019-08-22 19:02:02 +02:00
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