If Exit() was called from a handler for one of the pending events we could
reenter Dispatch() and block there indefinitely if no other events were coming
and this was exactly what happened in wxFileSystemWatcher unit test,
preventing it from ever running to completion under Unix.
Fix this by checking m_shouldExit after executing the pending handlers and
before calling Dispatch().
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71304 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This pretty-printer works by calling the C++ wxFileName::GetFullPath()
directly instead of interpreting the object data from gdb because this is much
simpler to do, so it can only be used when debugging live programs. If this is
a serious restriction, it would need to be changed to use gdb data access only
later.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71303 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
GetTitle() added in r71213 resulted in virtual function warnings from g++, fix
them by renaming it to GetBoxTitle().
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71302 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The width of the navigation panel in wxHtmlHelpWindow could become arbitrarily
high if long items used. Avoid this by using a reasonably large but not too
big minimal width instead of determining it automatically from the items width.
Closes#13754.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71301 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Prevent the default wxWindow-level wxEVT_ERASE_BACKGROUND handler from being
used in wxUniv for wxHtmlWindow. This is unnecessary as it has its own handler
anyhow and also doesn't work for some reason as erasing wxMemoryDC by drawing
a solid rectangle over it seems to be broken in at least wxX11.
Work around this problem by erasing the background in wxHtmlWindow itself if
no user-defined (as opposed to any, including one defined in wxWindow itself)
handler for this event exists.
Closes#13880.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71300 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The code tested twice for kCGImageAlphaNoneSkipLast which was clearly wrong.
The original intention was probably to check for both it and
kCGImageAlphaNoneSkipFirst, so fix it to this now.
Closes#14019.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71299 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
These events are now generated earlier and can result in crashes if the
controls they use are not initialized yet.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71297 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Unlike other similar classes, this one doesn't restore the previous clipping
region but just resets it because there is no way to get the current clipping
region from wxDC now. At least document this limitation until it can be fixed.
See #13834.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71296 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Now makes use of max size for images and keeps the image size reasonable
Added original image size so can usually avoid reloading image when recomputing
cached bitmap size
Takes into account bottom of the last floating image so scrollbars are
set correctly
Original image size is shown in disabled size controls
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71277 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The purpose of this code is unknown, but it may be intended to make WM
decorations transparent. But it causes a crash when docking an AUI panel.
And in my testing the decorations are transparent even without this code.
Fixes#4841
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71275 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The window that had focus previously could be hidden now, but its parent could
be hidden as well so it's not enough to set focus to it but we need to loop
until we find a visible ancestor.
Closes#14230.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71227 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The hover item was not reset properly in some circumstances, do it now.
Also check for the item being disabled in SetHoverItem() itself instead of
doing it several times before calling it.
Closes#14189.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71210 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
cairo_win32_surface_create() must be passed the window HDC and not HWND
itself, the old code calling it was broken.
Add WindowHDC object and pass its HDC to this function now to make it work.
Closes#14194.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71209 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Allow to use objects of this class without any valid HWND, this is useful for
the derived classes which may, or may not, need the corresponding HDC.
See #14194.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71208 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Cast socket handle to a 32 bit value as we use it with "%d" (or "%u" now as it
makes more sense) format specifier to avoid problems with type mismatches
under Win64.
Closes#14204.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71207 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This class allows using virtual wxFSFiles with any wx functions taking
streams. E.g. it makes it possible to load images and animations from
wxFileSystem.
Closes#14185.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71206 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This stream allows to wrap another stream. This is a useful base class for
adapter classes providing stream interface on top of something else, like the
upcoming wxFSInputStream.
See #14185.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71205 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This function can be used to obtain language/locale-independent representation
of an accelerator. This is particularly useful for storing it in configuration
files.
Closes#14228.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71203 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Use IFileDialog in wxDirDialog implementation if possible, it shows a much
more user-friendly dialog than the one used by SHBrowseForFolder().
Closes#11401.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71201 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Exit() is documented to call OnExit() and the pthreads version of wxThread did
behave as documented, so make wxMSW follow it as well and explicitly call
OnExit() before exiting the thread.
Closes#14212.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71197 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The #endif was somehow added at a wrong place and too much
wxDateTime-unrelated code was disabled when wxUSE_DATETIME was off.
Closes#14222.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71194 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775