- implements YieldFor() with event filtering for wxMSW and wxGTK,
adds TODO markers in other ports;
- replaces wxYield() in GTK's clipboard code with a wxTheApp->YieldFor() call, thus fixing possible reentrancies
(and modifies clipboard sample to test synchronous IsSupported calls)
- replaces wxYieldIfNeeded() calls in wxProgressDialog with wxTheApp->YieldFor() calls, so that it processes only
UI/user-input events, thus fixing the race condition visible in the "thread" sample
- documents the new functions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58654 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
for top level windows. Add a realized child for the shell
for functions requiring it (clipboard at the moment).
Use XtPopup to show top level widgets, as per Motif
guidelines.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27397 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
- wxWindow::OnInternalIdle is now used in all ports, and ensures that
user OnIdle events do not interfere with crucial internal processing.
- wxWindow::UpdateWindowUI is now a documented function that
sends wxUpdateUIEvents, and can be overridden. It has a helper function
DoUpdateWindowUI for taking appropriate wxUpdateUIEvent action.
- Added functions to wxUpdateUIEvent: Set/GetMode, Set/GetUpdateInterval,
CanUpdate, to assist with optimising update event frequency.
- Added functions to wxIdleEvent: Set/GetMode, CanSend, to
determine whether a window should receive idle events.
- Added wxWS_EX_PROCESS_IDLE, wxWS_EX_PROCESS_UI_UPDATES window
styles for use with conservative idle and update event modes.
- wxMSW and wxGTK now send menu update events only when a menu is
about to be used.
- Added WM_INITMENU processing instead of WM_ENTERMENULOOP, or
accelerators don't always get called since menu items may still
be disabled.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21789 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
creates one ApplicationShell per display, and makes top
level windows popup childs of the ApplicationShell.
Removed a couple of unused variables from wxApp.
Replaced some calls to wxGetDisplay with XtDisplay(widget)
or event.xany.display, and some others with wxGlobalDisplay
(the latter changes are just eyecandy).
Used wxFlushEvents where appropriate.
Fixed (hopefully) wxFindAcceleratorText and wxFindAccelerator;
for now the new version is still disabled, awaiting further testing.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20474 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
wxColour into a new wxXVisualInfo structure, and moved code
to initialize it to a new src/x11/utilsx.cpp file (utility
functions shared by wxMotif and wxX11).
Added (currently unused) code in wxMotif to
retrieve wxXVisualInfo; it will be used when wxMotif
is switched to bitmap.cpp from wxX11.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20056 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
wxWindow::DoPopupMenu and for the application main loop.
Implemented wxWakeUpIdle.
Fixed crash when a popup menu entry is used to close/destroy the parent
window of the menu.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19078 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
regenerated the makefiles. wxPostEvent() should work for wxGTK too (untested)
2. long -> wxCoord change for wxGTK and wxMSW, use
wxUSE_COMPATIBLE_COORD_TYPES to get the old behaviour
3. wxHTML compilation fixes (for !wxUSE_HTML case)
4. a couple of handy macros in thread.h added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4054 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
a) tear off menus
b) native dialogs
c) crash in ~wxWindow fixed
d) compilation and linking fixes
2. test code removed from minimal sample, text one compiles without clipboard
3. wxAppBase/wxApp small fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3074 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775