This reverts commit 8d1063389a which
prevents https://github.com/wxWidgets/wxWidgets/pull/919 from being
automatically merged and CI builds from running. The changes of that
commit will soon be replaced with the more extensive fixes from this PR.
Use float as the fundamental type for the font size and implement
wxNativeFontInfo::{Set,Get}PointSize() as wrappers around the new
{Set,Get}FractionalPointSize().
Update wxNativeFontInfo for all platforms and replace the use of its
SetPointSize() method with SetFractionalPointSize() in wxFont for the
platforms already supporting fractional point sizes (don't change the
others just yet).
Note that wxNativeFontInfo::{Get,Set}PointSize() are preserved for
backwards compatibility but shouldn't be used in any code inside the
library itself any more (again, this is not the case yet, but will be
soon).
Inside wxBitmap we have a direct access to wxBitampData so HBITMAP can be stored directly in this structure and there is no need to call SetHBITMAP() function.
To avoid separate calls to SetSize() function after calling SetHICON() use newly implemented InitFromHICON() function which allows set HICON together with its parameters in one call.
To avoid separate calls to SetWidth/Height/Size/Depth functions after calling SetHBITMAP() use newly implemented InitFromHBITMAP() function which allows to set HBITMAP together with its parameters in one call.
The icon wasn't updated when the node was expanded (or collapsed) due to
the inversed check for HasImageList().
Fix this by correcting the check.
Closes https://github.com/wxWidgets/wxWidgets/pull/929
When using IE wxWebView backend, this event wasn't generated as expected
when the client was redirected.
Fix this by using DOCHOSTUIFLAG_ENABLE_REDIRECT_NOTIFICATION flag.
Closes https://github.com/wxWidgets/wxWidgets/pull/893
The returned pointer must be allocated on the heap as
wxGridCellDateTimeRenderer::GetString() currently deletes it.
This seems like a rather poor idea, as any internally stored values must
be cloned on each call, but it seems too dangerous to change this as it
could result in massive memory leaks in the existing code.
Add wxFontBase::AccountForCompatValues() and use it in all ports instead
of redoing the same comparison with wxDEFAULT in all of them.
This is done not so much to avoid the code duplication, which was
minimal anyhow, but to make the code more clear and make it easier to
remove it from all ports at once in the bright (but remote) future when
we don't need these compatibility hacks any more.
Also document that wxDEFAULT and wxNORMAL are only handled specially in
the old-style ctor taking the individual font components and not the new
one using wxFontInfo and extend the unit test to check this.
Similarly to the previous commit, verify that wxNORMAL, wxITALIC and
wxSLANT still work for compatibility (note the latter is synonymous with
wxITALIC under MSW).
This is mostly done to fix (half of) compilation errors after
introduction of pure virtual wxFont::{Get,Set}NumericWeight() as wxFont
in wxX11 couldn't be compiled any more as it didn't define them.
In wxImage, it is possible to set the Load_Verbose flag (default) if
messages are to be shown to the user in popup message boxes (via
wxLogError and wxLogWarning).
Unsetting this flag is supposed to remove these message boxes but in
practice, this was only applied in the function DoLoad() while other
messages could be issued earlier in overloads of the function LoadFile().
This commit checks if Load_Verbose is set or not and behaves accordingly
in LoadFile() overloads so that all messages can be suppressed.
See https://github.com/wxWidgets/wxWidgets/pull/920
This solves backward incompatibility problem introduced in 2d8bbbe3c9.
The name of base class for grid header renderers hierarchy is restored
to be wxGridHeaderLabelsRenderer. This introduces another problem: now
wxGridCornerHeaderRenderer is derived from wxGridHeaderLabelsRenderer,
not vice versa, as it was before. But it is considered less disruptive
change, compared to base class rename.
Make these functions available for the upcoming reuse in wxFont.
This is almost a pure refactoring, except that assert checking for the
symbolic weight validity was corrected (it was always true before due to
wrong use of "||" instead of "&&", so split it in 2 asserts to ensure
that this doesn't happen any more).
Now, every header cell can have a label, including the corner one,
so wxGridHeaderLabelsRenderer::DrawLabel() was moved up one level
in the inheritance chain. Class names were changed accordingly.
Actual storage of corner label is delegated to a grid table class,
just because it is already done that way for column and row labels.
Resolve ambiguity in wxCFTypeRef::GetValue() calls: CGFloat is float,
not double, in 32 bit builds, so the type of the first argument is
"float *" while the type of 0.0 is "double".
Fix this by casting 0 to CGFloat too, as this works in both 32 and 64
bit builds.
Move the entire contents of wxAdv library into wxCore.
In the future, wxAdv will disappear entirely, but for now keep it as an
empty placeholder to allow the existing make/project files to work.
See https://github.com/wxWidgets/wxWidgets/pull/900