implement support for tthread.synchronize

git-svn-id: trunk@6420 -
This commit is contained in:
micha 2004-12-27 10:18:21 +00:00
parent 6668e92a48
commit 69a02addd1
3 changed files with 25 additions and 1 deletions

View File

@ -24,6 +24,12 @@
{ callback routines }
{*************************************************************}
procedure PrepareSynchronize;
begin
// wake up GUI thread by sending a message to it
Windows.PostMessage(TWin32WidgetSet(InterfaceObject).AppHandle, WM_NULL, 0, 0);
end;
{ addition XP messages }
const
@ -1431,7 +1437,7 @@ begin
if WinProcess then
Result := CallDefaultWindowProc(Window, Msg, WParam, LParam);
end;
{------------------------------------------------------------------------------
Procedure: TimerCallBackProc
Params: window_hnd - handle of window for timer message, not set in this implementation
@ -1464,6 +1470,9 @@ end;
{
$Log$
Revision 1.174 2004/12/27 10:18:21 micha
implement support for tthread.synchronize
Revision 1.173 2004/12/17 09:00:47 vincents
set version to 0.9.3

View File

@ -263,6 +263,11 @@ Initialization
{$endif}
EraseBkgndStack := 0;
{$ifdef USE_SYNCHRONIZE}
{ TThread.Synchronize support }
SynchronizeMethodProc := @PrepareSynchronize;
{$endif}
Finalization
Assert(False, 'Trace:win32int.pp - Finalization');
@ -272,6 +277,9 @@ End.
{ =============================================================================
$Log$
Revision 1.129 2004/12/27 10:18:21 micha
implement support for tthread.synchronize
Revision 1.128 2004/11/04 16:57:31 micha
remove obsolete and unused method twin32widgetset.settext

View File

@ -306,6 +306,10 @@ Begin
TranslateMessage(@AMessage);
DispatchMessage(@AMessage);
End;
{$ifdef USE_SYNCHRONIZE}
// check for pending to-be synchronized methods
CheckSynchronize;
{$endif}
End;
End;
@ -706,6 +710,9 @@ end;
{
$Log$
Revision 1.302 2004/12/27 10:18:21 micha
implement support for tthread.synchronize
Revision 1.301 2004/12/16 14:29:12 micha
fix showmodal to remember disabled windows (fixes bug 478, and more)