wxWidgets.git
10 years agoRemove the long obsolete and unused since 2.7.0 __WIN95__ define.
Vadim Zeitlin [Sat, 13 Jul 2013 23:23:19 +0000 (23:23 +0000)] 
Remove the long obsolete and unused since 2.7.0 __WIN95__ define.

Don't confuse things by defining it unnecessarily.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74507 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoMove wx/msw/gccpriv.h inclusion back to wx/platform.h from wx/compiler.h.
Vadim Zeitlin [Sat, 13 Jul 2013 23:23:14 +0000 (23:23 +0000)] 
Move wx/msw/gccpriv.h inclusion back to wx/platform.h from wx/compiler.h.

Do keep compiler-specific wxCHECK_MINGW32_VERSION() in wx/compiler.h as it's
needed by wx/cpp.h which includes wx/compiler.h only. But put the rest of the
stuff in gccpriv.h in its old place as including it before wx/setup.h didn't
work correctly and was unnecessary anyhow.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74506 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoUse wxNotebook background colour for the tab row background in wxMSW.
Vadim Zeitlin [Sat, 13 Jul 2013 23:23:08 +0000 (23:23 +0000)] 
Use wxNotebook background colour for the tab row background in wxMSW.

The free space near the tabs was always filled with the default light grey
colour, use wxNotebook background colour itself to fill it now.

Do it by changing the code in wxNotebook::OnPaint() to use the background
colour brush and ExtFloodFill() to paint over the default grey, instead of the
patterned background brush which is supposed to be used for the pages area
only and not for the tabs and which was not even taken into account anyhow as
the default window proc erases the entire contents of the DC we pass to it
anyhow (at least in the default top-aligned tabs case).

Also inherit the background colour from parent by default now, this ensures
that wxNotebook blends with its parent when its background colour has been
explicitly set by default, without the need to call its SetBackgroundColour()
explicitly.

See #13745.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74505 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoAdd a possibility to change the layout direction in the widgets sample.
Vadim Zeitlin [Sat, 13 Jul 2013 23:23:01 +0000 (23:23 +0000)] 
Add a possibility to change the layout direction in the widgets sample.

This allows to test whether a widget is drawn correctly in RTL variant as well
as the default LTR one easily.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74504 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoRegenerated Xcode projects.
Dimitri Schoolwerth [Sat, 13 Jul 2013 21:59:26 +0000 (21:59 +0000)] 
Regenerated Xcode projects.

Updated the Xcode projects to include wakeuppipe.cpp.
Also fixes the wxiphone project which appeared to have 2 source file references concatenated (stattext.mm and slider.mm) since the last commit. This unfortunately happens sometimes when running makeprojects.applescript.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74503 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoUse "MSW" and "Windows" more accurately to avoid confusion.
Vadim Zeitlin [Sat, 13 Jul 2013 20:07:51 +0000 (20:07 +0000)] 
Use "MSW" and "Windows" more accurately to avoid confusion.

"MSW" is used as the name of toolkit using the standard Windows UI while
"Windows" is the name of the OS under which wxGTK can be now used too (in
addition to wxMSW).

This terminology is not perfect but at least let's keep it unambiguous.

Closes #15328.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74502 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agodeleted svn:executable property from src/expat/ files that don't need it
Dimitri Schoolwerth [Sat, 13 Jul 2013 16:28:45 +0000 (16:28 +0000)] 
deleted svn:executable property from src/expat/ files that don't need it

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74501 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoUse Cocoa by default under OS X in configure.
Vadim Zeitlin [Sat, 13 Jul 2013 14:58:45 +0000 (14:58 +0000)] 
Use Cocoa by default under OS X in configure.

Carbon is deprecated.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74500 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoDo include src/generic/animateg.cpp in wxUniv/X11 sources.
Vadim Zeitlin [Sat, 13 Jul 2013 13:03:09 +0000 (13:03 +0000)] 
Do include src/generic/animateg.cpp in wxUniv/X11 sources.

This fixes linking of the widgets sample when using wxUniv/X11.

It partially reverts the changes of r73290 which only included this file in
some selected ports instead of all of them for some reason.

Closes #15327.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74499 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoSet svn properties on new files.
Dimitri Schoolwerth [Sat, 13 Jul 2013 11:41:46 +0000 (11:41 +0000)] 
Set svn properties on new files.

In the majority of cases set the svn:eol-style property (mostly to native for sources and LF for m4 files) and svn:keywords to Id. Applied for files that were added since r72503.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74498 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoRebake all the samples and others makefiles too.
Vadim Zeitlin [Sat, 13 Jul 2013 02:33:00 +0000 (02:33 +0000)] 
Rebake all the samples and others makefiles too.

The samples makefiles were not regenerated after the recent Scintilla changes
(see r74425), do it now. There are no real changes for most of them (except
stc sample), but it ensures that rerunning bakefile doesn't change anything.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74497 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoExtract compiler-specific macro definitions in a new wx/compiler.h.
Vadim Zeitlin [Sat, 13 Jul 2013 02:30:21 +0000 (02:30 +0000)] 
Extract compiler-specific macro definitions in a new wx/compiler.h.

This solves the problem with wx/defs.h -> wx/platform.h -> wx/setup.h which
resolves to msvc/wx/setup.h -> wx/version.h -> wx/cpp.h include path which
resulted in __VISUALC__ not being defined in wx/cpp.h.

This problem was not new but went unnoticed for a long time and was only
discovered when wxCHECK_VISUALC_VERSION() started being used in wx/cpp.h too
as now the compiler started warning about wrong #if syntax due to it being
undefined.

Putting the compiler-specific definitions in a separate file allows this file
to be included from wx/cpp.h to ensure that these symbols are always defined
in it and also makes things a little better organized.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74496 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoFix harmless MinGW warning in wxMSW wxListCtrl code.
Vadim Zeitlin [Fri, 12 Jul 2013 14:12:44 +0000 (14:12 +0000)] 
Fix harmless MinGW warning in wxMSW wxListCtrl code.

Add an explicit cast to WPARAM because MinGW headers don't do it for us (even
though they should).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74495 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoFix harmless unused parameter warning in !wxUSE_GRAPHICS_CONTEXT build.
Vadim Zeitlin [Fri, 12 Jul 2013 14:12:41 +0000 (14:12 +0000)] 
Fix harmless unused parameter warning in !wxUSE_GRAPHICS_CONTEXT build.

Rich tooltip tip kind is unused as no tip is drawn in this case.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74494 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoFix wrong return value from wxWebViewIE::Find() in 64 bit build.
Vadim Zeitlin [Fri, 12 Jul 2013 14:12:38 +0000 (14:12 +0000)] 
Fix wrong return value from wxWebViewIE::Find() in 64 bit build.

Using wxNOT_FOUND and an unsigned size() return value in the same operator ?:
resulted in wxNOT_FOUND being converted to an unsigned size_t type and while
converting it back to (signed) long worked in 32 bit builds where long and
size_t have the same size, it was broken in 64 bit builds where their sizes
are different.

Thanks g++ for catching this one.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74493 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoMake destructors of COM interface classes virtual.
Vadim Zeitlin [Fri, 12 Jul 2013 14:12:35 +0000 (14:12 +0000)] 
Make destructors of COM interface classes virtual.

This is needed to at least silence g++ warnings but may actually even fix a
real problem as these classes can be inherited from and are deleted via a
pointer (to "this" itself, in Release() implementation).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74492 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoFix warnings about implicit float or double to int conversions in wxMSW.
Vadim Zeitlin [Fri, 12 Jul 2013 14:12:31 +0000 (14:12 +0000)] 
Fix warnings about implicit float or double to int conversions in wxMSW.

Make the conversions explicit as these warnings are harmless.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74491 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoMention that wxGTK can be built with Wayland backend too.
Vadim Zeitlin [Fri, 12 Jul 2013 11:20:02 +0000 (11:20 +0000)] 
Mention that wxGTK can be built with Wayland backend too.

It is supported just as well as the already Broadway is.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74490 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoReconcile HAVE_VARIADIC_MACROS and wxHAS_VARIADIC_MACROS definitions.
Vadim Zeitlin [Thu, 11 Jul 2013 22:40:47 +0000 (22:40 +0000)] 
Reconcile HAVE_VARIADIC_MACROS and wxHAS_VARIADIC_MACROS definitions.

The main user-visible effect of this change is that giving configure
--disable-vararg-macros argument now really disables the use of variadic
macros whereas it didn't disable them in wx/cpp.h before.

It is, of course, also less confusing to not have two very similar but
different symbols.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74489 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoadapting to new x wheel behavior, see #15269
Stefan Csomor [Thu, 11 Jul 2013 19:46:59 +0000 (19:46 +0000)] 
adapting to new x wheel behavior, see #15269

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74488 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoadapt to wx conventions for scroll wheel differences between horizontal and vertical...
Stefan Csomor [Thu, 11 Jul 2013 19:31:21 +0000 (19:31 +0000)] 
adapt to wx conventions for scroll wheel differences between horizontal and vertical directions, fixes #15269

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74487 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoUse int instead of wxWindowID in wxNewId() and friends.
Václav Slavík [Thu, 11 Jul 2013 07:53:35 +0000 (07:53 +0000)] 
Use int instead of wxWindowID in wxNewId() and friends.

The functions are available in wxBase builds too, but wx/windowid.h
isn't. Rather than always including that header, just use int, for which
wxWindowID is a typedef. This keeps the functions available in wxBase
for compatibility and is consistent with how IDs are handled in other
parts of wxBase, particularly wxEvent.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74486 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoUse wxWindowID in wxNewId() and related functions.
Václav Slavík [Thu, 11 Jul 2013 06:58:35 +0000 (06:58 +0000)] 
Use wxWindowID in wxNewId() and related functions.

wxNewId(), wxRegisterId() and wxGetCurrentId() functions all work with
window IDs, so they should use the dedicated type. Previously, they
worked with long, which is not even the same type (wxWindowID is int),
causing implicit type conversion warnings.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74485 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoComment out the CIAbot script, the site has been dead a long time.
Robin Dunn [Thu, 11 Jul 2013 01:28:56 +0000 (01:28 +0000)] 
Comment out the CIAbot script, the site has been dead a long time.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74484 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

10 years agoImplement monitoring of file descriptors in wxMotif event loop.
Vadim Zeitlin [Wed, 10 Jul 2013 23:43:57 +0000 (23:43 +0000)] 
Implement monitoring of file descriptors in wxMotif event loop.

This allows applications using wxMotif to link again after the changes of
r74350 -- and wxExecute() unit tests actually pass, too.

Closes #15305.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74480 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoRecognize VC12 (a.k.a. MSVS 2013) and define __VISUALC12__ for it.
Vadim Zeitlin [Wed, 10 Jul 2013 21:29:48 +0000 (21:29 +0000)] 
Recognize VC12 (a.k.a. MSVS 2013) and define __VISUALC12__ for it.

Closes #15320.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74479 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix typo in wxGUIEventLoop::ScheduleExit() in wxMotif.
Vadim Zeitlin [Wed, 10 Jul 2013 21:18:29 +0000 (21:18 +0000)] 
Fix typo in wxGUIEventLoop::ScheduleExit() in wxMotif.

This was broken in r74335.

See #15305.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74478 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAdd wxX11EventLoopSourcesManager stub implementation to fix wxX11 linking.
Vadim Zeitlin [Wed, 10 Jul 2013 21:15:18 +0000 (21:15 +0000)] 
Add wxX11EventLoopSourcesManager stub implementation to fix wxX11 linking.

Asynchronous wxExecute() still doesn't work in wxX11 but at least the programs
using the library can be linked now.

See #15305.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74477 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAdd default ctors and Create() to wxDirDialog and wxFileDialog in wxOSX.
Vadim Zeitlin [Wed, 10 Jul 2013 21:12:07 +0000 (21:12 +0000)] 
Add default ctors and Create() to wxDirDialog and wxFileDialog in wxOSX.

Allow two-step creation of these classes.

Closes #15316.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74476 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix checking for GTK+ 3.0 in configure.
Vadim Zeitlin [Wed, 10 Jul 2013 20:48:48 +0000 (20:48 +0000)] 
Fix checking for GTK+ 3.0 in configure.

Update gtk-3.0.m4 to work correctly with gthread module and regenerate
configure using the new version of this file.

Closes #15319.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74475 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoUkrainian translations update from Yuri Chornoivan.
Vadim Zeitlin [Wed, 10 Jul 2013 20:35:25 +0000 (20:35 +0000)] 
Ukrainian translations update from Yuri Chornoivan.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74474 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix lots of warnings reported by Clang.
Václav Slavík [Wed, 10 Jul 2013 16:41:34 +0000 (16:41 +0000)] 
Fix lots of warnings reported by Clang.

Mostly potentially lossy implicit conversions in headers (long->int). Also dangling else warnings. Struct/class mismatches.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74473 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoOnly return -1,0,1 from wxXmlResource::CompareVersion().
Václav Slavík [Wed, 10 Jul 2013 16:38:19 +0000 (16:38 +0000)] 
Only return -1,0,1 from wxXmlResource::CompareVersion().

In other words, do as the comment says.  Also fixes an implicit
conversion warning.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74472 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoDefine WXBUILDING in Xcode projects.
Václav Slavík [Wed, 10 Jul 2013 16:35:07 +0000 (16:35 +0000)] 
Define WXBUILDING in Xcode projects.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74471 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agonon-pch build fix
Paul Cornett [Wed, 10 Jul 2013 13:17:02 +0000 (13:17 +0000)] 
non-pch build fix

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74470 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAdd documentation for building wxGTK under Windows.
Vadim Zeitlin [Wed, 10 Jul 2013 13:08:56 +0000 (13:08 +0000)] 
Add documentation for building wxGTK under Windows.

Closes #15318.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74469 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix restoring the status bar help message after closing MSW menu from keyboard.
Vadim Zeitlin [Wed, 10 Jul 2013 12:28:06 +0000 (12:28 +0000)] 
Fix restoring the status bar help message after closing MSW menu from keyboard.

Add a hack to ignore WM_MENUSELECT messages we get for the top level menu
items: we must not clear the status bar help message when we get those because
it had just been restored to the original message that was there before the
menu was opened from the base class wxEVT_MENU_CLOSE handler, but this message
comes after it when keyboard is used to close the menu.

Closes #15315.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74468 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoIgnore WM_MENUSELECT messages indicating that the menu was closed.
Vadim Zeitlin [Wed, 10 Jul 2013 12:24:54 +0000 (12:24 +0000)] 
Ignore WM_MENUSELECT messages indicating that the menu was closed.

Don't update the help string in this case, this is not necessary and can clear
the help string set elsewhere.

See #15315.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74467 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoVietnamese translations update from Trần Ngọc Quân.
Vadim Zeitlin [Wed, 10 Jul 2013 12:00:31 +0000 (12:00 +0000)] 
Vietnamese translations update from Trần Ngọc Quân.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74466 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoUpdate translations template for 2.9.5 release.
Vadim Zeitlin [Wed, 10 Jul 2013 11:57:20 +0000 (11:57 +0000)] 
Update translations template for 2.9.5 release.

No real changes, just removed a one character string that is not marked as
translated any longer.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74465 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAllow retrieving the descent and external leading of empty strings.
Vadim Zeitlin [Wed, 10 Jul 2013 01:28:18 +0000 (01:28 +0000)] 
Allow retrieving the descent and external leading of empty strings.

This used to work before wxTextMeasure changes so make it work again instead
of optimizing the case of empty string away and not returning anything in the
descent and externalLeading output parameters in this case.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74464 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix VC++ warnings about __has_include().
Václav Slavík [Tue, 9 Jul 2013 17:29:02 +0000 (17:29 +0000)] 
Fix VC++ warnings about __has_include().

The compiler warns about content after defined(__has_included), so avoid
the issue by putting these Clang tests inside one big #ifdef
__has_included block.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74461 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoCheck axis number in the received joystick messages.
Vadim Zeitlin [Tue, 9 Jul 2013 16:44:37 +0000 (16:44 +0000)] 
Check axis number in the received joystick messages.

Closes #15313.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74460 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoCompilation fix for r74457.
Václav Slavík [Tue, 9 Jul 2013 16:12:05 +0000 (16:12 +0000)] 
Compilation fix for r74457.

Remove stray #endif from incorrectly merged changes.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74459 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agofixing forced link of quicktime backend on osx_cocoa
Stefan Csomor [Tue, 9 Jul 2013 15:55:29 +0000 (15:55 +0000)] 
fixing forced link of quicktime backend on osx_cocoa

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74458 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix OS X compilation in C++11 mode with libc++.
Václav Slavík [Tue, 9 Jul 2013 15:47:13 +0000 (15:47 +0000)] 
Fix OS X compilation in C++11 mode with libc++.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74457 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoWork around wxFinite() definition conflict with <cmath>.
Václav Slavík [Tue, 9 Jul 2013 15:44:01 +0000 (15:44 +0000)] 
Work around wxFinite() definition conflict with <cmath>.

Using the GNU libstdc++ or Clang's libc++ implementations of the
standard library, <cmath> inclusion undefines the isfinite macro,
resulting in compilation errors when wxFinite() is used.  <cmath> can be
included unintentionally, e.g.  wx/hashmap.h may result in its inclusion
when using STD containers.

Work around this mess by checking if one of these <cmath>
implementations were already included and using std::isfinite() in that
case.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74456 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoCheck for buffer being big enough in wxPathOnly().
Vadim Zeitlin [Mon, 8 Jul 2013 21:44:06 +0000 (21:44 +0000)] 
Check for buffer being big enough in wxPathOnly().

Just return NULL or empty string if the input path is too long. This is
probably not ideal but it fixes a buffer overflow and all this code needs to
be rewritten to use wxFileName() anyhow so it's not worth doing anything more
at this moment.

Closes #15302.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74455 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoMerge libpng 1.6.2 into the trunk.
Vadim Zeitlin [Sun, 7 Jul 2013 17:44:15 +0000 (17:44 +0000)] 
Merge libpng 1.6.2 into the trunk.

Add pngprefix.h file generated by libpng configure/make process (which we
don't run during wxWidgets build, so this is something that will need to be
redone manually whenever libpng is upgraded, the procedure for doing this is
documented in docs/tech/tn0025.txt) in order to use "wx_" prefix for all
libpng public symbols. This should avoid at least some problems due to the
conflicts between the built-in libpng and shared libpng loaded into the
process as GTK+ libraries dependency under Unix.

Also rename wx_png_{warning,error} to use upper case PNG for consistency with
wx_PNG_stream_{reader,writer} and to avoid conflict with png_{warning,error}()
which we now rename to have "wx_" prefix.

Closes #14157.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74451 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAdd instructions for upgrading third party libraries.
Vadim Zeitlin [Sun, 7 Jul 2013 17:35:18 +0000 (17:35 +0000)] 
Add instructions for upgrading third party libraries.

Describe the process for upgrading the libraries for which we already use svn
vendor branches.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74450 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoRegenerate configure after libwxscintilla linking changes.
Vadim Zeitlin [Sun, 7 Jul 2013 16:35:44 +0000 (16:35 +0000)] 
Regenerate configure after libwxscintilla linking changes.

This should have been done together with the changes of r74425, as
autoconf_inc.m4 had changed, configure should have been regenerated too.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74449 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoDefine XML_STATIC in Expat header instead of Expat projects.
Vadim Zeitlin [Sun, 7 Jul 2013 14:44:56 +0000 (14:44 +0000)] 
Define XML_STATIC in Expat header instead of Expat projects.

This reverts r74444 and defines XML_STATIC unconditionally in Expat sources
themselves as we always use the built-in Expat as a static library, so this
solution is simpler and more portable.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74446 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoCompilation fix for r74440 and STL builds.
Václav Slavík [Sun, 7 Jul 2013 14:13:01 +0000 (14:13 +0000)] 
Compilation fix for r74440 and STL builds.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74445 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoDefine XML_STATIC for Expat build to fix linking of Windows DLLs.
Vadim Zeitlin [Sun, 7 Jul 2013 13:58:33 +0000 (13:58 +0000)] 
Define XML_STATIC for Expat build to fix linking of Windows DLLs.

The new Expat assumes it's built as a DLL by default, define XML_STATIC to
indicate that this is not the case as we always build it as a static library.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74444 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoCorrect typo in a link in i18n documentation page.
Vadim Zeitlin [Sun, 7 Jul 2013 13:47:39 +0000 (13:47 +0000)] 
Correct typo in a link in i18n documentation page.

See r74442.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74443 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoClarify .mo deployment in i18n overview.
Václav Slavík [Sun, 7 Jul 2013 13:43:13 +0000 (13:43 +0000)] 
Clarify .mo deployment in i18n overview.

Fixes #15253.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74442 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoDon't look for catalogs in AddCatalogLookupPathPrefix() path directly.
Václav Slavík [Sun, 7 Jul 2013 13:42:50 +0000 (13:42 +0000)] 
Don't look for catalogs in AddCatalogLookupPathPrefix() path directly.

Previously, the prefix directory itself for searched for catalogs, in
addition to prefix/lang/LC_MESSAGES and prefix/lang.  This never made
much sense, because only one catalog could be in such place, instead of
multiple catalogs for more languages.  It also prevented successful
identification of catalog's language and didn't work with
GetAvailableLanguages().

Remove this misfeature and update the documentation accordingly.  Update
OS X-specific code so that it continues to work (it previously depended
on this behavior).  As a side effect, *.lproj directories are now
recognized in all search prefixes, not just in Resources.

See #12498, #15253.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74441 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoImprove translations lookup logging.
Václav Slavík [Sun, 7 Jul 2013 13:42:27 +0000 (13:42 +0000)] 
Improve translations lookup logging.

Log match directory in GetAvailableTranslations().  Log search paths
with one directory per line, for better readability when debugging.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74440 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoCorrect wxTranslations docs: CWD is not searched.
Václav Slavík [Sun, 7 Jul 2013 13:42:02 +0000 (13:42 +0000)] 
Correct wxTranslations docs: CWD is not searched.

The documentation incorrectly stated that the current working directory
is searched for translations.  This isn't the case (and wouldn't be a
good thing to do).

See #12498.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74439 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoRemove the TOOLKIT test from msvc-headers-setuo-h definition.
Vadim Zeitlin [Sun, 7 Jul 2013 12:58:45 +0000 (12:58 +0000)] 
Remove the TOOLKIT test from msvc-headers-setuo-h definition.

This is unnecessary now that TOOLKIT is back to being a constant again and
results in errors if GTK TOOLKIT is enabled.

Closes #14965.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74438 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAdd files necessary to run Expat configure.
Vadim Zeitlin [Sun, 7 Jul 2013 12:47:34 +0000 (12:47 +0000)] 
Add files necessary to run Expat configure.

This should have been part of the previous commit (r74436).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74437 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoUpdate the version of Expat used to 2.1.0.
Vadim Zeitlin [Sun, 7 Jul 2013 12:45:30 +0000 (12:45 +0000)] 
Update the version of Expat used to 2.1.0.

Merge with the latest version, mostly discarding our changes to 1.95.6 as they
seem to be unnecessary any longer, keep just bakefile-specific addition to
configure.

Also update our own makefile to define HAVE_EXPAT_CONFIG_H which is now needed
by Unix build.

Closes #11677.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74436 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoUse wxConvAuto() in wxStyledTextCtrl::DoLoadFile().
Václav Slavík [Sun, 7 Jul 2013 11:47:17 +0000 (11:47 +0000)] 
Use wxConvAuto() in wxStyledTextCtrl::DoLoadFile().

This is both more reasonable than the current runtime encoding (the
input file is from unknown source) and more robust (it can handle UTF-*
encoded files transparently).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74435 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoUse wxConvAuto in wxFile::Write().
Václav Slavík [Sun, 7 Jul 2013 11:46:53 +0000 (11:46 +0000)] 
Use wxConvAuto in wxFile::Write().

For consistency with wxFFile.

No real change, as wxConvAuto will default to UTF-8 when writing.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74434 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoDon't pretend that wxAnyButton::SetBitmap() supports invalid bitmaps.
Vadim Zeitlin [Sun, 7 Jul 2013 00:39:05 +0000 (00:39 +0000)] 
Don't pretend that wxAnyButton::SetBitmap() supports invalid bitmaps.

Because it doesn't under MSW.

See #13569.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74430 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAvoid using buffer of already deallocated string in wxHTMLDataObject.
Vadim Zeitlin [Sun, 7 Jul 2013 00:38:41 +0000 (00:38 +0000)] 
Avoid using buffer of already deallocated string in wxHTMLDataObject.

Ensure that the temporary string inside which the pointer returned by
utf8_str() may point remains alive for long enough.

Closes #15279.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74429 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoForbid creation of wxStandardPaths object directly.
Vadim Zeitlin [Sat, 6 Jul 2013 23:14:21 +0000 (23:14 +0000)] 
Forbid creation of wxStandardPaths object directly.

This happens to work under MSW and Unix where there is only one
wxStandardPaths class for both the console and the GUI applications but
doesn't return the correct result under OS X where the Core Foundation
version, returned by wxStandardPaths::Get(), has to be used for the GUI
programs. And historically this confused a lot of people, so just ensure that
they can't accidentally create an object of the wrong type any more.

Closes #13537.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74428 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoReuse wxMessageOutputStderr for wxLogStderr implementation.
Vadim Zeitlin [Sat, 6 Jul 2013 22:57:05 +0000 (22:57 +0000)] 
Reuse wxMessageOutputStderr for wxLogStderr implementation.

In addition to avoiding (tiny) code duplication, this ensures that both places
use the stream in the same orientation, i.e. either both use the narrow
functions or the wide ones. Thus, it fixes a problem with output simply
disappearing if wxLogStderr and wxMessageOutputStderr were both used: the one
used first disabled any output by the other one.

Closes #14782.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74427 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoCorrectly restore the originally used C locale in wxLocale dtor.
Vadim Zeitlin [Sat, 6 Jul 2013 22:48:20 +0000 (22:48 +0000)] 
Correctly restore the originally used C locale in wxLocale dtor.

Save the original locale used before we changed it instead of "restoring" the
same locate that this wxLocale object was using.

Add a unit test to verify that this does work as expected.

Closes #14873.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74426 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoOnly link with libwxscintilla if using Scintilla is enabled.
Vadim Zeitlin [Sat, 6 Jul 2013 19:14:59 +0000 (19:14 +0000)] 
Only link with libwxscintilla if using Scintilla is enabled.

Correct the changes of r74408 to avoid using libwxscintilla if we don't build
it at all.

See #13837.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74425 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoDisable test for setting the creation time under Unix.
Vadim Zeitlin [Sat, 6 Jul 2013 19:14:20 +0000 (19:14 +0000)] 
Disable test for setting the creation time under Unix.

Also document that this doesn't work there.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74424 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix FILETIME <-> wxDateTime conversions while DST is in effect in wxMSW.
Vadim Zeitlin [Sat, 6 Jul 2013 18:21:10 +0000 (18:21 +0000)] 
Fix FILETIME <-> wxDateTime conversions while DST is in effect in wxMSW.

The result was (consistently, so the tests still passed) off by an hour when
the program was ran while DST was in effect. Fix this by avoiding the use of
FileTimeToLocalFileTime() and LocalFileTimeToFileTime() and just directly
converting FILETIME values to wxDateTime. Not only this is more correct but
it's also simpler and more efficient as well.

Also add a unit test for wxFileName::SetTimes() too.

Closes #13098.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74423 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoExplicitly mention that wxDateTime ticks origin is in UTC.
Vadim Zeitlin [Sat, 6 Jul 2013 18:20:45 +0000 (18:20 +0000)] 
Explicitly mention that wxDateTime ticks origin is in UTC.

Make it clear that the number of ticks is counted since the same moment in all
time zones.

See #13098.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74422 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoavoid GTK+ prefixes for our tree entry code, it is not part of GTK+, should have...
Paul Cornett [Sat, 6 Jul 2013 17:27:53 +0000 (17:27 +0000)] 
avoid GTK+ prefixes for our tree entry code, it is not part of GTK+, should have been part of r74420

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74421 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoavoid GTK+ prefixes for our tree entry code, it is not part of GTK+
Paul Cornett [Sat, 6 Jul 2013 16:35:40 +0000 (16:35 +0000)] 
avoid GTK+ prefixes for our tree entry code, it is not part of GTK+

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74420 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoremove symbol exports, this code is private to the library
Paul Cornett [Sat, 6 Jul 2013 16:04:28 +0000 (16:04 +0000)] 
remove symbol exports, this code is private to the library

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74419 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoremove empty GtkTreeEntryClass
Paul Cornett [Sat, 6 Jul 2013 15:58:42 +0000 (15:58 +0000)] 
remove empty GtkTreeEntryClass

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74418 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoremove instance init function, memory is already zeroed
Paul Cornett [Sat, 6 Jul 2013 15:50:57 +0000 (15:50 +0000)] 
remove instance init function, memory is already zeroed

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74417 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agomove treeentry_gtk.h to include/wx/gtk/private/
Paul Cornett [Sat, 6 Jul 2013 15:44:21 +0000 (15:44 +0000)] 
move treeentry_gtk.h to include/wx/gtk/private/

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74416 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agocreate collate_key on demand
Paul Cornett [Sat, 6 Jul 2013 15:34:59 +0000 (15:34 +0000)] 
create collate_key on demand

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74415 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoExclude expat files from pre commit hook checks too.
Vadim Zeitlin [Sat, 6 Jul 2013 14:46:26 +0000 (14:46 +0000)] 
Exclude expat files from pre commit hook checks too.

All the other 3rd party libraries were already excluded but not this one, for
some reason -- do exclude it now as upcoming Expat 2.1.0 sources contain some
files with TABs.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74414 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoUpdate announcement and readme files for 2.9.5 release.
Vadim Zeitlin [Sat, 6 Jul 2013 14:46:03 +0000 (14:46 +0000)] 
Update announcement and readme files for 2.9.5 release.

Fill in the release date and update the changes description in the
announcement.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74413 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAlways add libwxscintilla in monolithic mode.
Vadim Zeitlin [Sat, 6 Jul 2013 12:41:02 +0000 (12:41 +0000)] 
Always add libwxscintilla in monolithic mode.

The library was already present in the makefiles but came before the
monolithic library itself, which broke the linking of the samples when using
GNU ld as the dependent libraries must come after the libraries using them.

Closes #13837.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoRebake the rest of the files after TOOLKIT change in MSW bakefile.
Vadim Zeitlin [Sat, 6 Jul 2013 12:32:23 +0000 (12:32 +0000)] 
Rebake the rest of the files after TOOLKIT change in MSW bakefile.

This should have been part of r74406 but I only rebaked wxWidgets make/project
files themselves and not the samples/utils/demos files in it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74407 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoMake TOOLKIT variable constant in MSW makefiles.
Vadim Zeitlin [Sat, 6 Jul 2013 11:59:35 +0000 (11:59 +0000)] 
Make TOOLKIT variable constant in MSW makefiles.

This fixes duplicate lines defining rules for generic files for more than one
port in the makefiles.

Closes #14979.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74406 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix potential buffer overflow in wxSTC DefaultFont() function.
Vadim Zeitlin [Sat, 6 Jul 2013 00:28:13 +0000 (00:28 +0000)] 
Fix potential buffer overflow in wxSTC DefaultFont() function.

Use safe(r) wxStrlcpy() instead of strcpy() to copy the font name.

Closes #15296.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74405 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix test for Windows in the new wxExecute() unit test.
Vadim Zeitlin [Sat, 6 Jul 2013 00:27:50 +0000 (00:27 +0000)] 
Fix test for Windows in the new wxExecute() unit test.

TestOverlappedSyncExecute() doesn't currently pass under Windows and was
supposed to not be executed there but was, in console test, as __WXMSW__ is
not defined in this case, only __WINDOWS__ is (as there is no GUI toolkit in
the console applications).

See #10258.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoCaret blink time and blink on/off are now also reflected in GTK+ widgets
Julian Smart [Fri, 5 Jul 2013 17:11:15 +0000 (17:11 +0000)] 
Caret blink time and blink on/off are now also reflected in GTK+ widgets

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74362 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoUse wxRTC text colour if possible for caret
Julian Smart [Fri, 5 Jul 2013 16:26:37 +0000 (16:26 +0000)] 
Use wxRTC text colour if possible for caret

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74361 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoDon't flash wxRTC caret if blink time is zero, and also take colour from window text...
Julian Smart [Fri, 5 Jul 2013 13:33:30 +0000 (13:33 +0000)] 
Don't flash wxRTC caret if blink time is zero, and also take colour from window text colour to avoid invisibility.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74359 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoPrevent duplicate menu event processing in MDI windows.
Vadim Zeitlin [Wed, 3 Jul 2013 22:18:42 +0000 (22:18 +0000)] 
Prevent duplicate menu event processing in MDI windows.

Record the object propagating the given event upwards in the event object
itself and use it in wxMDIParentFrame to determine whether the event being
handled is already coming from wxMDIChildFrame and avoid sending it back for
processing it there again in this case.

This is ugly and makes wx event processing even more complex but this is the
only way I could find to ensure that

(a) Both the child and the parent frames get the events from the toolbar
    (even though the toolbar parent is the parent frame and hence normally
    the child wouldn't get notified about them at all and so the forwarding
    at wxMDIParentFrame level is required to make this work).

(b) The child gets the event only once, whether it comes from a toolbar (and
    hence indirectly via the parent frame) or from the child menu (and hence
    directly to the child, at least in wxMSW).

This commit fixes the event propagation unit test case, at least under MSW and
GTK.

See #14314.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74357 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoTest handling of events from the toolbar in an MDI parent frame.
Vadim Zeitlin [Wed, 3 Jul 2013 22:18:18 +0000 (22:18 +0000)] 
Test handling of events from the toolbar in an MDI parent frame.

These events must be received by the currently active child.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74356 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoEnsure that the MDI child is active in event propagation test.
Vadim Zeitlin [Wed, 3 Jul 2013 22:17:55 +0000 (22:17 +0000)] 
Ensure that the MDI child is active in event propagation test.

Call wxMDIChildFrame::Activate() explicitly as the behaviour was different
under MSW (where the activation happened too late for the test) and GTK where
the child did become active because of the hacks in place to ensure it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74355 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoMake AsyncExecLoopExitEnum enum in the wxExecute() test public.
Vadim Zeitlin [Wed, 3 Jul 2013 11:03:09 +0000 (11:03 +0000)] 
Make AsyncExecLoopExitEnum enum in the wxExecute() test public.

This fixes VC6 build as the nested class couldn't access a private enum inside
the enclosing class.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74354 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agofix wxCHECK_MSG() return value
Paul Cornett [Wed, 3 Jul 2013 03:12:44 +0000 (03:12 +0000)] 
fix wxCHECK_MSG() return value

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74353 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoDon't ignore child process output if it exits with -1 exit code.
Vadim Zeitlin [Wed, 3 Jul 2013 00:33:04 +0000 (00:33 +0000)] 
Don't ignore child process output if it exits with -1 exit code.

While this code is used by us if the program couldn't be launched at all, it
doesn't mean that it didn't run as -1 could also be returned by the child
process to indicate an error after outputting something, so we should still
read its output in this case.

Closes #15205.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74352 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoRun wxExecute() unit test in the GUI test suite too.
Vadim Zeitlin [Wed, 3 Jul 2013 00:32:40 +0000 (00:32 +0000)] 
Run wxExecute() unit test in the GUI test suite too.

The same code works differently in console and GUI applications, so build this
test case as part of both of them.

See #10258.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74351 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoRewrite wxExecute() implementation under Unix.
Vadim Zeitlin [Wed, 3 Jul 2013 00:32:16 +0000 (00:32 +0000)] 
Rewrite wxExecute() implementation under Unix.

This commit changes wxExecute() to handle SIGCHLD to be notified about the
child process termination instead of detecting when the file descriptor
corresponding to the other end of a pipe opened in the parent process was
closed in the child as this was not reliable and could (and did) result in not
detecting the termination of the child processes that closed all their file
descriptors before exiting.

This commit also removes a lot of platform-specific code duplicating the
generic event loop sources support and reuses it for wxExecute() purposes too.

Final big change is that wxEndProcessData was merged into wxExecuteData and we
don't have two similar but quite different classes any more but just one,
which is used both to pass the information from wxExecute() to wxAppTraits
methods and to store this information until the child termination.

Closes #10258.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74350 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAdd a helper wxApp::GetValidTraits() method.
Vadim Zeitlin [Wed, 3 Jul 2013 00:31:49 +0000 (00:31 +0000)] 
Add a helper wxApp::GetValidTraits() method.

This method always returns some valid traits, even if we don't have wxTheApp
(which is possible in the console applications) or if its GetTraits() was
overridden to return NULL (which shouldn't be, but still guard against this).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74349 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoTreat G_IO_HUP as read, not error, event because EOF is not exceptional.
Vadim Zeitlin [Wed, 3 Jul 2013 00:31:26 +0000 (00:31 +0000)] 
Treat G_IO_HUP as read, not error, event because EOF is not exceptional.

When EOF is reached on a file descriptor, call the handler OnReadWaiting()
because this is not really different from getting to the EOF while reading
data in the same function. Only call OnExceptionWaiting() for the real errors.

See #10258.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74348 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775