Václav Slavík
|
86e9b8f28f
|
wxDFB: use Unix event loop and timers (fixes #10408)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58520 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2009-01-30 15:21:47 +00:00 |
|
Václav Slavík
|
cd720f7e16
|
wxEpollDispatcher is in wxBase, not wxCore - fixed to use WXDLLIMPEXP_BASE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58487 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2009-01-29 00:26:40 +00:00 |
|
Vadim Zeitlin
|
a12698abb7
|
added wxFDIODispatcher::HasPending() and implemented correctly wxConsoleEventLoop::Pending() using it to fix the pending events processing in console event loop based programs; also changed wxFDIODispatcher::Dispatch() return type/value to be able to indicate the errors
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57804 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2009-01-03 01:21:24 +00:00 |
|
Vadim Zeitlin
|
df21920b80
|
disable the events when we get a notification about socket being ready for IO and reenable them later after performing the IO in the Unix version to avoid continuous flood of ready notifications
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57796 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2009-01-02 21:53:30 +00:00 |
|
Vadim Zeitlin
|
39b61b0581
|
rename wxSocketSelectManager to wxSocketFDIOManager, the old name was confusing as it could be either select()- or epoll()-based
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57776 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2009-01-02 16:59:23 +00:00 |
|
Vadim Zeitlin
|
c363ead1e2
|
remove wxSOCKET_MAX_EVENT, it is not really necessary and results in gcc warnings about unhandled enum value in switch in existing code (including our own sample)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57653 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2008-12-30 00:11:04 +00:00 |
|
Vadim Zeitlin
|
14372de82e
|
move Read/Write() to common code, there was almost nothing platform-specific in it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57613 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2008-12-27 22:49:46 +00:00 |
|
Vadim Zeitlin
|
62088a3c3b
|
wxSocketImpl::Shutdown() doesn't need to be virtual, its implementation can the same in Unix and Win32 versions (events are already disabled by Close() so there is no need to do it again explicitly under Unix)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57611 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2008-12-27 22:03:34 +00:00 |
|
Vadim Zeitlin
|
7d66cdccd0
|
don't remove/add back the socket to the list of inputs monitored by the event loop all the time but just leave it there until the socket is destroyed; this should be beneficial from performance point of view (although hard to measure) and also makes the code simpler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57610 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2008-12-27 21:56:05 +00:00 |
|
Vadim Zeitlin
|
5e9238f9c6
|
remove the badle defined and apparently unnecessary wxSocketImpl::m_detected field
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57608 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2008-12-27 21:48:42 +00:00 |
|
Vadim Zeitlin
|
2b036c4b23
|
our sockets are always non-blocking anyhow so throw away all the code dealing with checking if they're blocking; also merge Unix/Win32 versions of connect() and accept() handling as they were almost identical except for the different checking of the return value which was factored out into a platform-specific GetLastError() function
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57600 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2008-12-27 17:15:22 +00:00 |
|
Vadim Zeitlin
|
aa8cbe0b64
|
return true if we did anything in NotifyExpired()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57570 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2008-12-26 22:27:02 +00:00 |
|
Vadim Zeitlin
|
22185a1f15
|
remove m_use_events from Unix wxSocket implementation, we always need asynchronous socket notifications now (and this was always the case under Windows anyhow), even if we don't always generate wx events corresponding to them
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57569 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2008-12-26 20:20:46 +00:00 |
|
Vadim Zeitlin
|
c6b1063250
|
refactor Input/Output_Timeout: don't duplicate the same code in MSW/Unix code and also don't duplicate it for input and output, one function is enough for both
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57558 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2008-12-25 20:27:35 +00:00 |
|
Vadim Zeitlin
|
07792edb2e
|
use void pointers, not char ones, in socket IO functions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57546 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2008-12-25 18:29:08 +00:00 |
|
Vadim Zeitlin
|
54cb21d692
|
remove wxSocketManager::CreateSocket() function, we don't need to have different wxSocketImpl implementation for the same platform, all the differences between console and GUI applications are abstracted by wxSocketManager::Install/Uninstall_Callback() methods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57000 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2008-11-28 15:06:50 +00:00 |
|
Vadim Zeitlin
|
acd523a964
|
move enabled callbacks flag down to wxSocketImplUnix from wxSocketImplFDIO, this allows to get rid of the letter
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56999 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2008-11-28 15:01:41 +00:00 |
|
Vadim Zeitlin
|
a9d859df6f
|
make wxSocketImplUnix inherit from wxFDIOHandler as they're used for almost the same purpose; this removes the need for the bridge wxSocketOHandler class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56998 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2008-11-28 14:39:49 +00:00 |
|
Vadim Zeitlin
|
9123889f20
|
no real changes, just moved wxSocketImplUnix ctor inline
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56997 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2008-11-28 13:43:41 +00:00 |
|
Vadim Zeitlin
|
6091364135
|
rename various gsock* files to sock* (except for MSW where this will be done later)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56995 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2008-11-28 13:04:47 +00:00 |
|
Vadim Zeitlin
|
04021d6fac
|
made Dispatch() return bool indicating whether we processed any events inside it or if the timeout expired
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56358 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2008-10-16 12:33:05 +00:00 |
|
Vadim Zeitlin
|
d31a4a84fb
|
don't leak epoll descriptor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47473 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2007-07-14 20:22:27 +00:00 |
|
Vadim Zeitlin
|
5e1eac149f
|
create the single global IO dispatcher in wxFDIODispatcher; don't use wxSelectDispatcher in wxGSocket as the global dispatcher may be of a different type (modified patch 1733626)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47471 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2007-07-14 20:18:38 +00:00 |
|
Vadim Zeitlin
|
7523de907d
|
replaced wxFDIODispatcher::RunLoop() with Dispatch() which handles only one event at a time (part 1 of the patch 1733626)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47470 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2007-07-14 19:50:38 +00:00 |
|
Vadim Zeitlin
|
af57c51ab7
|
changed wxFDIODispatcher::UnregisterFD() to take only fd, without flags, and unregister it unconditionally; use ModifyFD() to just change the flags (modified part of patch 1733626)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47469 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2007-07-14 19:41:46 +00:00 |
|
Vadim Zeitlin
|
a187327964
|
Added wxUSE_CONSOLE_EVENTLOOP and wxUSE_SELECT/EPOLLDISPATCHER guards;
put checks for them in the new Unix-specific wx/unix/chkconf.h file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47465 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2007-07-14 19:06:18 +00:00 |
|
Vadim Zeitlin
|
3c029873c6
|
check for wxUSE_TIMER in headers, not the files including them
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47323 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2007-07-11 00:00:33 +00:00 |
|
Vadim Zeitlin
|
74e10fcc6a
|
reset one shot timer internal state instead of leaving it thinking that it's still running (mdified patch 1730597)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46324 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2007-06-04 13:34:54 +00:00 |
|
Vadim Zeitlin
|
ad8d42f83c
|
factor out the fd<->handlers map from wxFDIODispatcher into a separate wxMappedFDIODispatcher class (patch 1729395)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46274 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2007-06-02 13:51:05 +00:00 |
|
Vadim Zeitlin
|
b46b1d59d6
|
implement event loop for console applications (heavily modified patch 1715735)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46029 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2007-05-14 23:43:39 +00:00 |
|
Vadim Zeitlin
|
c2ca375c56
|
preparation for allowing to use wxTimer in wxBase (heavily modified patch 1113088):
1. Changed wxTimer to use wxTimerImpl
2. Added Unix-specific generic timer implementation
3. Added wxAppTraits::CreateTimerImpl()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45544 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
|
2007-04-20 01:29:16 +00:00 |
|