Merges everything from the branch with only some minor changes, mostly renamed
wxUSE_FSWATCHER_{INOTIFY,KQUEUE} to wxHAS_{INOTIFY,KQUEUE}.
Add wxFileSystemWatcher and related classes.
Also introduces wxEventLoopSource.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62474 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
not quite up-to-date compilers, to reduce repetitions and to allow using
methods of non-wxEvtHandler-derived classes as event callbacks:
1. Don't rely on compiler ability to deduce template parameter from the type
of a parameter of a function used as another template parameter, at least
MSVC7 can't do this and it's probably not the only one.
2. Do rely on compiler support for partial specialization to make
wxEventFunctorMethod compile for non-wxEvtHandler-derived handlers while
still keeping the old functionality for the wxEvtHandler-derived ones.
3. Don't make any difference between functions and functors, both are callable
objects so use them as such, this allows to fold code for both cases.
4. Avoid the use of dynamic_cast<>.
5. Several naming changes:
a) wxTypedEventType -> wxEventTypeTag (because this is what it is)
b) Subscribe/Unsubscribe -> DoConnect/Disconnect (to follow the usual
convention of public Foo calling private DoFoo and to avoid using up
another name)
c) Derived -> ObjClass (because it's not clear what does Derived mean)
6. Extend the unit test to cover more cases.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58625 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
from public to protected. Adapt wxWidgets code and wxWidgets samples to always use wxWindow::GetEventHandler()
when calling such functions on a wxWindow rather than directly using wxWindow::ProcessEvent, etc.
This enables correct event dispatching to the event handlers which have been pushed (with PushEventHandler) on the
windows.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58381 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775