Commit Graph

39 Commits

Author SHA1 Message Date
Francesco Montorsi
dde19c2180 second part of #10320: move wxApp event handling functions to wxEventLoopBase (in particular move Yield() functions); add backward compatible redirections to wxApp; update docs; remove global lists wxPendingEvents and wxPendingEventsLocker
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58911 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-15 14:25:08 +00:00
Francesco Montorsi
d48b06bd90 check in the 'selective yield' patch (see ticket #10320):
- 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
2009-02-04 17:42:28 +00:00
Francesco Montorsi
53a2db124c substitute WXDLLEXPORT with WXDLLIMPEXP_CORE and WXDLLEXPORT_DATA with WXDLLIMPEXP_DATA_CORE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52834 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-26 15:06:00 +00:00
Vadim Zeitlin
8ecf734646 compilation fix after argv changes (move initialization from OnInitGui() to Initialize() where the original command line arguments are accessible)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50398 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-12-01 13:26:42 +00:00
Vadim Zeitlin
4f7d425f60 use correct WXDLLIMPEXP_FWD_XXX (patch from Tim Stahlhut)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50184 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-23 14:13:50 +00:00
Václav Slavík
b5dbe15d0b added WXDLLIMPEXP_FWD_FOO macros in addition to WXDLLIMPEXP_FOO for use with forward declarations (in preparation for GCC visibility support)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47254 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-09 10:09:52 +00:00
Paul Cornett
0728199b91 process pending wx events before sending idle events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47229 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-08 05:31:32 +00:00
Włodzimierz Skiba
925f774066 Minor header cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40325 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-25 14:31:55 +00:00
Mart Raudsepp
8907154c1a Nuke #pragma implementation/interface's
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35650 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-23 12:56:45 +00:00
Mattia Barbon
96be256b3e Replaced TRUE and FALSE with true and false
(or True and False when calling Motif APIs).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31802 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 17:38:33 +00:00
Julian Smart
655719367a Use old licence name
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-23 20:53:33 +00:00
Julian Smart
77ffb5937e Name and version changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-23 14:56:36 +00:00
Mattia Barbon
5a2e3d8c47 Do not realize the top level shell that acts as a parent
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
2004-05-22 18:01:33 +00:00
Mattia Barbon
bdcade0a10 When wxUSE_STL == 1 and STL provides quasi-standard hash_map/hash_set,
wxHashMap/wxHashSet are just typedefs for them. This makes impossible
to forward declare these classes.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27182 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-08 20:20:24 +00:00
Mattia Barbon
93d660a411 GCC 3.4 fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27034 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-01 16:56:59 +00:00
Mattia Barbon
f15b55cee0 Fixes for application not closing after last top level
window closed.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@24166 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-10-13 17:23:23 +00:00
Vadim Zeitlin
dd435a79ed removed wxApp::Initialized() (replaced with a dummy version in wxApp itself); wxApp in wxGTK now uses wxEvtLoop too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@23965 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-09-27 13:47:46 +00:00
Vadim Zeitlin
1bf77ee556 use wxEventLoop in wxApp under wxMSW; factored out common code from wxX11/wxMotif/wxMGL to wxAppBase; changed wxApp::Dispatch() return type
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@23609 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-09-15 19:48:16 +00:00
Julian Smart
955a919785 Rationalised OnIdle
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21948 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-14 08:41:08 +00:00
Julian Smart
e39af974ef - Moved wxApp::SendIdleEvents and wxApp::ProcessIdle into common code.
- 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
2003-07-09 10:15:21 +00:00
Vadim Zeitlin
7e7d30dae4 removed old wxEntry() declaration
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21525 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-30 21:14:06 +00:00
Vadim Zeitlin
05e2b077c6 more work on fixing wxEntry() and ANSI/Unicode cmd line args mess
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21520 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-30 20:02:05 +00:00
Vadim Zeitlin
9482617091 extracted common initialization/cleanup functions in common/init.cpp; standardized wxEntry()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21518 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-30 18:43:09 +00:00
Vadim Zeitlin
e2478fde62 wxBase/GUI separation: 1st step, wxMSW should build, all the rest is broken
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21342 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 00:56:19 +00:00
Mattia Barbon
eb6fa4b425 Changed the way ApplicationShells are used: now wxMotif
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
2003-05-04 17:40:46 +00:00
Mattia Barbon
9ce8d6a2b0 Moved m_visual* wxApp[X11] members used by wxBitmap and
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
2003-04-07 17:15:11 +00:00
Mattia Barbon
7e1bcfa80e Implemented wxEventLoop for wxMotif, and used it in wxDialog::ShowModal,
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
2003-02-02 15:48:50 +00:00
Julian Smart
90a1a975d4 Applied patch [ 588734 ] Makes ProcessIdle() virtual
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16341 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-08-01 19:54:55 +00:00
Václav Slavík
0e04ef47f6 move wxApp::GetStdIcon to wxArtProvider
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@14746 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-03-24 00:19:01 +00:00
Julian Smart
83df96d63a Reformatted Motif headers; added __WXX11__ symbol support to common headers;
added place-holding src/x11 and include/wx/x11 files.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@14015 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-02-05 16:34:33 +00:00
Vadim Zeitlin
8461e4c253 added wxApp::Yield()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@12095 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-10-19 18:29:32 +00:00
Vadim Zeitlin
72cdf4c9b3 1. wxApp::ProcessPendingEvents() is now common, added appcmn.cpp and
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
1999-10-18 15:14:52 +00:00
Michael Bedward
e2e04ea4a7 Added wxApp::CheckForKeyUp MB
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3206 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-30 03:55:59 +00:00
Vadim Zeitlin
ee31c392ac 1. Assorted Motif fixes
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
1999-07-21 16:10:18 +00:00
Karsten Ballüder
ebea0891d0 Made icons configurable via a wxMApp virtual function. Tested on wxGTK only,
added it for all ports, though.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2953 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-05 11:22:45 +00:00
Guilhem Lavaux
7214297d16 * Added threads event propagation. Should compile on GTK (tested).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1986 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-03-27 18:50:54 +00:00
Julian Smart
8aa04e8bf1 Accelerators implemented for wxMotif; some wxComboBox stupidities cured
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@995 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1998-11-12 22:47:51 +00:00
Julian Smart
47bc106012 Misc. Motif; removed duplicate wxICON; variant compile fix; added wxString form
of wxStripMenuCodes


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@843 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1998-10-16 14:38:52 +00:00
Julian Smart
9b6dbb0974 Added Motif files.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@751 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1998-09-18 10:19:10 +00:00