X-Git-Url: http://www.lcore.org/git/lcore.git/blobdiff_plain/82d4e52fba54be50d719f6185ec381f2dc87fc6c..cda2e4bba1a2bc9bd3e48076f236ac843086aff3:/wcore.pas?ds=inline

diff --git a/wcore.pas b/wcore.pas
old mode 100755
new mode 100644
index f88aa53..2c07d50
--- a/wcore.pas
+++ b/wcore.pas
@@ -1,8 +1,3 @@
-{ Copyright (C) 2005 Bas Steendijk and Peter Green
-  For conditions of distribution and use, see copyright notice in zlib_license.txt
-  which is included in the package
-  ----------------------------------------------------------------------------- }
-
 unit wcore;
 
 {
@@ -39,7 +34,7 @@ interface
       initialdone:boolean;
       prevtimer:tltimer;
       nexttimer:tltimer;
-      interval:integer;        {miliseconds, default 1000}
+      interval:integer;        {milliseconds, default 1000}
       nextts:integer;
       property enabled:boolean read fenabled write setenabled;
       constructor create(aowner:tcomponent);override;
@@ -63,9 +58,10 @@ procedure addtask(ahandler:ttaskevent;aobj:tobject;awparam,alparam:longint);
 procedure disconnecttasks(aobj:tobject);
 procedure exitmessageloop;
 procedure processmessages;
+procedure wcoreinit;
 
 var
-  onshutdown:procedure(s:string);
+  onshutdown:procedure(s:ansistring);
 
 implementation
 
@@ -83,7 +79,7 @@ const
 var
   hwndwcore:hwnd;
   firsttimer:tltimer;
-  timesubstract:integer;
+  timesubtract:integer;
   firsttask,lasttask,currenttask:tltask;
 
 procedure tlcomponent.release;
@@ -148,13 +144,13 @@ begin
   end;
 
   tvnow := timegettime;
-  if (tvnow and ((-1) shl rollover_bits)) <> timesubstract then begin
+  if (tvnow and ((-1) shl rollover_bits)) <> timesubtract then begin
     currenttimer := firsttimer;
     while assigned(currenttimer) do begin
       dec(currenttimer.nextts,(1 shl rollover_bits));
       currenttimer := currenttimer.nexttimer;
     end;
-    timesubstract := tvnow and ((-1) shl rollover_bits);
+    timesubtract := tvnow and ((-1) shl rollover_bits);
   end;
   tvnow := tvnow and ((1 shl rollover_bits)-1);
 
@@ -221,7 +217,7 @@ begin
     end else begin
       currenttasklocal := currenttask; //needed in case called from a task
     end;
-    // note i don't bother to sestroy the links here as that will happen when
+    // note i don't bother to destroy the links here as that will happen when
     // the list of tasks is processed anyway
     while assigned(currenttasklocal) do begin
       if currenttasklocal.obj = aobj then begin
@@ -317,11 +313,8 @@ var
                                  lpszMenuName  : nil;
                                  lpszClassName : 'wcoreClass');
 
-procedure messageloop;
-var
-  MsgRec : TMsg;
+procedure wcoreinit;
 begin
-
   if Windows.RegisterClass(MyWindowClass) = 0 then halt;
   //writeln('about to create wcore handle, hinstance=',hinstance);
   hwndwcore := CreateWindowEx(WS_EX_TOOLWINDOW,
@@ -344,6 +337,14 @@ begin
   {$endif}
 
 
+end;
+
+procedure messageloop;
+var
+  MsgRec : TMsg;
+
+begin
+
   while GetMessage(MsgRec, 0, 0, 0) do begin
     TranslateMessage(MsgRec);
     DispatchMessage(MsgRec);
@@ -364,12 +365,13 @@ end;
 
 function ProcessMessage : Boolean;
 var
-    Msg : TMsg;
+    MsgRec : TMsg;
 begin
     Result := FALSE;
-    if PeekMessage(Msg, hwndwcore, 0, 0, PM_REMOVE) then begin
+    if PeekMessage(MsgRec, 0, 0, 0, PM_REMOVE) then begin
       Result := TRUE;
-      DispatchMessage(Msg);
+      TranslateMessage(MsgRec);
+      DispatchMessage(MsgRec);
     end;
 end;
 
@@ -380,3 +382,4 @@ end;
 
 
 end.
+