wxOSX Retina fixes: wxImageList::GetSize().

wxImageList returns size of its bitmap as pixel size, i.e.  twice the
displayed screen on HiDPI screens.  Unfortunately,
wxImageList::GetSize() is used heavily in (generic) GUI drawing code,
e.g.  to properly size wxListCtrl's icon columns.  As wxImageList is
used primarily by controls, it seems reasonable to adjust for scaling
here, rather than requiring all users of the class to do it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75351 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Remove wx/generic/colrdlgg.h from common GUI headers.

This header is not used in all ports, notably not in wxMSW nor wxGTK.

See #15753.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75395 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Use wxScopedArray instead of raw new[]/delete[] and fix memory leak.

Don't leak memory in case of error when reading from the stream in BMP loading
code.

Closes #15789.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75505 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Simplify and fix column determination code in wxGridStringTable.

The number of columns in the table is now (since r60717) stored in m_numCols,
so there is no need to get it from wxGrid any more. This is not only simpler
and faster but also more correct as the first row might not have the full
number of values yet.

Closes #15809.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75552 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Fix handling of bitmaps with alpha channel in wxMSW wxImageList.

Don't use mask and alpha together, this results in visual artefacts and masks
are unnecessary with RGBA bitmaps anyhow.

The only potentially problematic remaining case is mixing bitmaps with alpha
and mask inside the same image list (as we need to indicate whether we use the
mask or not when creating it), but this should probably be rare and in the
meanwhile we can at least RGBA bitmaps with image lists, which includes doing
this implicitly when they are used as button bitmaps.

Also refactor wxBitmap code to extract part of CopyFromIconOrCursor() to allow
reusing it in the newly added MSWUpdateAlpha().

See #11476.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75567 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Fix cursor inheritance and busy cursor/global cursor, closes #15801


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75690 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Reduce the number of realloc() calls in wxHtmlTableCell.

Don't call realloc() after adding each row, this is horribly inefficient, so
preallocate more memory to avoid this.

Closes #15931.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75746 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Recompute the tooltip width when changing its text in wxMSW.

This avoids unnecessarily wrapping the tooltips if they are set to a longer
string than their initial value later.

Closes #4685.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75756 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Add new XRC headers to the core project too.

Closes #15942.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75787 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Different fix for cursor inheritance and busy cursor/global cursor.
Previous work was not compatible with GTK < 2.18 and did not properly handle some cases
see #15801


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75807 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Optimized wxRTC insertion and deletion when floating objects are present.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75884 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Set model pointer in wxDataViewEvents generated under wxOSX.

Add missing SetModel() calls.

Closes #16004.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75933 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Use settings in wx_vcN_local.props files if they exist.

Allow overriding the default build settings in local properties files for VC11
and VC12 builds.

See #15780.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75982 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Add missing semicolons to the example in wxThread documentation.

wxDEFINE_EVENT() needs a semicolon after it.

Closes #16026.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76010 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Define wxUSE_BOOKCTRL as 1 if wxUSE_AUI==1.

wxAuiNotebook needs wxBookCtrlBase.

Closes #16025.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76011 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Fix font size when using wxGraphicsContext with wxPrinterDC in wxMSW.

Use pixel size which is scaled correctly by GDI+ itself instead of the size in
points which is currently not scaled correctly by wx.

Closes #3566.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76012 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Fix wxGenericTreeCtrl::ScrollTo() for all ports, not just wxOSX.

When scrolling down, make the item being scrolled into view completely visible
instead of just showing its top part.

The fix was already used for wxOSX but not for the other ports for some
reason, do use it everywhere as this code is generic and behaves in the same
way in all ports.

Also fix the wrong comments about scrolling direction.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76014 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Index: src/generic/graphicc.cpp
===================================================================
--- src/generic/graphicc.cpp	(revision 76007)
+++ src/generic/graphicc.cpp	(working copy)
@@ -1569,12 +1569,13 @@
             {
                 const wxUint32 argb = *src++;
 
-                *alpha++ = (argb & 0xff000000) >> 24;
+                const unsigned char a = argb >> 24;
+                *alpha++ = a;
 
                 // Copy the RGB data undoing the pre-multiplication.
-                *dst++ = Unpremultiply(*alpha, (argb & 0x00ff0000) >> 16);
-                *dst++ = Unpremultiply(*alpha, (argb & 0x0000ff00) >>  8);
-                *dst++ = Unpremultiply(*alpha, (argb & 0x000000ff));
+                *dst++ = Unpremultiply(a, argb >> 16);
+                *dst++ = Unpremultiply(a, argb >>  8);
+                *dst++ = Unpremultiply(a, argb);
             }
 
             src = rowStart + stride;


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76015 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Fix compilation with Xcode projects (type_traits).

The changes to type_traits headers detection with Clang broke Clang use
with the Xcode projects. Fix this by not setting HAVE_* macros in
config_xcode.h for Clang and letting defs.h detect the features.

See #15915.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76016 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
patched for ICC; sync with upstream; removed files we don't support

Signed-off-by: Marian 'VooDooMan' Meravy <vdm113@gmail.com>