Browse Source

* Split file according to Class; implemented dummys for all methods, so unit compiles.

michael 27 years ago
parent
commit
39a62a2569
14 changed files with 2935 additions and 372 deletions
  1. 137 0
      fcl/inc/bits.inc
  2. 213 364
      fcl/inc/classes.inc
  3. 11 8
      fcl/inc/classesh.inc
  4. 238 0
      fcl/inc/collect.inc
  5. 297 0
      fcl/inc/compon.inc
  6. 32 0
      fcl/inc/filer.inc
  7. 217 0
      fcl/inc/lists.inc
  8. 124 0
      fcl/inc/parser.inc
  9. 63 0
      fcl/inc/persist.inc
  10. 362 0
      fcl/inc/reader.inc
  11. 472 0
      fcl/inc/streams.inc
  12. 468 0
      fcl/inc/strings.inc
  13. 96 0
      fcl/inc/thread.inc
  14. 205 0
      fcl/inc/writer.inc

+ 137 - 0
fcl/inc/bits.inc

@@ -0,0 +1,137 @@
+{
+    $Id$
+    This file is part of the Free Component Library (FCL)
+    Copyright (c) 1998 by the Free Pascal development team
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+{****************************************************************************}
+{*                               TBits                                      *}
+{****************************************************************************}
+
+  procedure TBits.Error;
+
+    begin
+{$ifdef NoExceptions}
+         ;
+{$else}
+         Raise(EBitsError);
+{$endif}
+    end;
+
+  procedure TBits.SetSize(Value: Integer);
+
+    var
+       hp : pointer;
+       cvalue,csize : Integer;
+
+    begin
+       { ajust value to n*8 }
+       cvalue:=Value;
+       if cvalue mod 8<>0 then
+         cvalue:=cvalue+(8-(cvalue mod 8));
+
+       { store pointer to release it later }
+       hp:=FBits;
+
+       { ajust size to n*8 }
+       csize:=FSize;
+       if csize mod 8<>0 then
+         csize:=csize+(8-(csize mod 8));
+
+       if FSize>0 then
+         begin
+            { get new memory }
+            GetMem(FBits,cvalue div 8);
+            { clear the whole array }
+            FillChar(FBits^,cvalue div 8,0);
+            { copy old data }
+            Move(hp^,FBits^,csize div 8);
+         end
+       else
+         FBits:=nil;
+
+       if assigned(hp) then
+         FreeMem(hp,csize div 8);
+
+       FSize:=Value;
+    end;
+
+  procedure TBits.SetBit(Index: Integer; Value: Boolean);
+
+    type
+       pbyte = ^byte;
+
+    begin
+       if (Index>=FSize) or (Index<0)  then
+         Error
+       else
+         begin
+            if Value then
+              pbyte(FBits)[Index div 8]:=pbyte(FBits)[Index div 8] or
+                (1 shl (Index mod 8))
+            else
+              pbyte(FBits)[Index div 8]:=pbyte(FBits)[Index div 8] and
+                not(1 shl (Index mod 8));
+         end;
+    end;
+
+  function TBits.GetBit(Index: Integer): Boolean;
+
+    type
+       pbyte = ^byte;
+
+    begin
+       if (Index>=FSize) or (Index<0) then
+         Error
+       else
+         GetBit:=(pbyte(FBits)[Index div 8] and (1 shl (Index mod 8)))<>0;
+    end;
+
+  destructor TBits.Destroy;
+
+    var
+       csize : Integer;
+
+    begin
+       { ajust size to n*8 }
+       csize:=FSize;
+       if csize mod 8<>0 then
+         csize:=csize+(8-(csize mod 8));
+       if assigned(FBits) then
+         FreeMem(FBits,csize);
+       inherited Destroy;
+    end;
+
+  function TBits.OpenBit: Integer;
+
+    type
+       pbyte = ^byte;
+
+    var
+       i : Integer;
+
+    begin
+       for i:=0 to FSize-1 do
+         if (pbyte(FBits)[i div 8] and (1 shl (i mod 8)))=0 then
+           begin
+              OpenBit:=i;
+              exit;
+           end;
+       SetSize(FSize+1);
+       OpenBit:=FSize-1;
+    end;
+
+
+{
+  $Log$
+  Revision 1.1  1998-05-04 14:30:11  michael
+  * Split file according to Class; implemented dummys for all methods, so unit compiles.
+
+}

+ 213 - 364
fcl/inc/classes.inc

@@ -12,504 +12,353 @@
 
  **********************************************************************}
 
-{****************************************************************************}
-{*                               TBits                                      *}
-{****************************************************************************}
-
-  procedure TBits.Error;
-
-    begin
-{$ifdef NoExceptions}
-         ;
-{$else}
-         Raise(EBitsError);
-{$endif}
-    end;
-
-  procedure TBits.SetSize(Value: Integer);
-
-    var
-       hp : pointer;
-       cvalue,csize : Integer;
-
-    begin
-       { ajust value to n*8 }
-       cvalue:=Value;
-       if cvalue mod 8<>0 then
-         cvalue:=cvalue+(8-(cvalue mod 8));
-
-       { store pointer to release it later }
-       hp:=FBits;
-
-       { ajust size to n*8 }
-       csize:=FSize;
-       if csize mod 8<>0 then
-         csize:=csize+(8-(csize mod 8));
-
-       if FSize>0 then
-         begin
-            { get new memory }
-            GetMem(FBits,cvalue div 8);
-            { clear the whole array }
-            FillChar(FBits^,cvalue div 8,0);
-            { copy old data }
-            Move(hp^,FBits^,csize div 8);
-         end
-       else
-         FBits:=nil;
-
-       if assigned(hp) then
-         FreeMem(hp,csize div 8);
-
-       FSize:=Value;
-    end;
-
-  procedure TBits.SetBit(Index: Integer; Value: Boolean);
-
-    type
-       pbyte = ^byte;
-
-    begin
-       if (Index>=FSize) or (Index<0)  then
-         Error
-       else
-         begin
-            if Value then
-              pbyte(FBits)[Index div 8]:=pbyte(FBits)[Index div 8] or
-                (1 shl (Index mod 8))
-            else
-              pbyte(FBits)[Index div 8]:=pbyte(FBits)[Index div 8] and
-                not(1 shl (Index mod 8));
-         end;
-    end;
-
-  function TBits.GetBit(Index: Integer): Boolean;
-
-    type
-       pbyte = ^byte;
-
-    begin
-       if (Index>=FSize) or (Index<0) then
-         Error
-       else
-         GetBit:=(pbyte(FBits)[Index div 8] and (1 shl (Index mod 8)))<>0;
-    end;
-
-  destructor TBits.Destroy;
-
-    var
-       csize : Integer;
-
-    begin
-       { ajust size to n*8 }
-       csize:=FSize;
-       if csize mod 8<>0 then
-         csize:=csize+(8-(csize mod 8));
-       if assigned(FBits) then
-         FreeMem(FBits,csize);
-       inherited Destroy;
-    end;
-
-  function TBits.OpenBit: Integer;
-
-    type
-       pbyte = ^byte;
-
-    var
-       i : Integer;
-
-    begin
-       for i:=0 to FSize-1 do
-         if (pbyte(FBits)[i div 8] and (1 shl (i mod 8)))=0 then
-           begin
-              OpenBit:=i;
-              exit;
-           end;
-       SetSize(FSize+1);
-       OpenBit:=FSize-1;
-    end;
-
-{****************************************************************************}
-{*                             TStream                                      *}
-{****************************************************************************}
-
-  function TStream.GetPosition: Longint;
-
-    begin
-       GetPosition:=Seek(0,soFromCurrent);
-    end;
-
-  procedure TStream.SetPosition(Pos: Longint);
-
-    begin
-       Seek(soFromBeginning,Pos);
-    end;
-
-  function TStream.GetSize: Longint;
-
-    var
-       p : longint;
-
-    begin
-       p:=GetPosition;
-       GetSize:=Seek(soFromEnd,0);
-       Seek(soFromBeginning,p);
-    end;
-
-  procedure TStream.SetSize(NewSize: Longint);
-
-    begin
-       SetPosition(NewSize);
-    end;
-
-  procedure TStream.ReadBuffer(var Buffer; Count: Longint);
-
-    begin
-       if Read(Buffer,Count)<Count then
-{$ifdef NoExceptions}
-         ;
-{$else}
-         Raise(EReadError);
-{$endif}
-    end;
-
-  procedure TStream.WriteBuffer(const Buffer; Count: Longint);
-
-    begin
-       if Write(Buffer,Count)<Count then
-{$ifdef NoExceptions}
-         ;
-{$else}
-         Raise(EWriteError);
-{$endif}
-    end;
-
-  function TStream.CopyFrom(Source: TStream; Count: Longint): Longint;
-
-    var
-       i : longint;
-       buffer : array[0..1023] of byte;
-
-    begin
-       CopyFrom:=0;
-       while Count>0 do
-         begin
-            if (Count>sizeof(buffer)) then
-              i:=sizeof(Buffer)
-            else
-              i:=Count;
-            i:=Source.Read(buffer,i);
-            i:=Write(buffer,i);
-            dec(count,i);
-            CopyFrom:=CopyFrom+i;
-            if i=0 then
-              exit;
-         end;
-    end;
-
-  function TStream.ReadComponent(Instance: TComponent): TComponent;
-
-    var
-       Reader : TReader;
-
-    begin
-       Reader.Create(Self,1024);
-       if assigned(Instance) then
-         ReadComponent:=Reader.ReadRootComponent(Instance)
-       else
-         begin
-            {!!!!!}
-         end;
-       Reader.Destroy;
-    end;
-
-  function TStream.ReadComponentRes(Instance: TComponent): TComponent;
-
-    begin
-       {!!!!!}
-    end;
-
-  procedure TStream.WriteComponent(Instance: TComponent);
-
-    var
-       Writer : TWriter;
-
-    begin
-       Writer.Create(Self,1024);
-       Writer.WriteRootComponent(Instance);
-       Writer.Destroy;
-    end;
-
-  procedure TStream.WriteComponentRes(const ResName: string; Instance: TComponent);
-
-    var
-       startpos,s : longint;
-
-    begin
-(* 
-{$ifdef Win16Res}
-       { Numeric resource type }
-       WriteByte($ff);
-       { Application defined data }
-       WriteWord($0a);
-       { write the name as asciiz }
-       WriteData(ResName[1],length(ResName));
-       WriteByte(0);
-       { Movable, Pure and Discardable }
-       WriteWord($1030);
-       { size isn't known yet }
-       WriteDWord(0);
-       startpos:=GetPosition;
-       WriteComponent(Instance);
-       { calculate size }
-       s:=GetPosition-startpos;
-       { back patch size }
-       SetPosition(startpos-4);
-       WriteDWord(s);
-{$endif Win16Res}
-*)
-    end;
-
-  procedure TStream.WriteDescendent(Instance, Ancestor: TComponent);
-
-    begin
-       {!!!!!}
-    end;
-
-  procedure TStream.WriteDescendentRes(const ResName: string; Instance, Ancestor: TComponent);
-
-    begin
-       {!!!!!}
-    end;
-
-  procedure TStream.ReadResHeader;
-
-    begin
-{$ifdef Win16Res}
-       try
-         { application specific resource ? }
-         if ReadByte<>$ff then
-           raise EInvalidImage;
-         if ReadWord<>$000a then
-           raise EInvalidImage;
-         { read name }
-         while ReadByte<>0 do
-           ;
-         { check the access specifier }
-         if ReadWord<>$1030 then
-           raise EInvalidImage;
-         { ignore the size }
-         ReadDWord;
-       except
-{/////
-         on EInvalidImage do
-           raise;
-         else
-           raise(EInvalidImage);
-}
-       end;
-{$endif Win16Res}
-    end;
+{**********************************************************************
+ *       Class implementations are in separate files.                 *
+ **********************************************************************}
 
-  function TStream.ReadByte : Byte;
+{ TBits implementation }
+{$i bits.inc}
 
-    var
-       b : Byte;
+{ TReader implementation }
+{$i reader.inc}
 
-    begin
-       ReadBuffer(b,1);
-       ReadByte:=b;
-    end;
+{ TWriter implementation }
+{$i writer.inc}
 
-  function TStream.ReadWord : Word;
+{ TFiler implementation }
+{$i filer.inc}
 
-    var
-       w : Word;
+{ All streams implementations: }
+{ Tstreams THandleStream TFileStream TResourcseStreams TStringStream }
+{ TCustomMemoryStream TMemoryStream }
+{$i streams.inc}
 
-    begin
-       ReadBuffer(w,2);
-       ReadWord:=w;
-    end;
+{ TParser implementation}
+{$i parser.inc}
 
-  function TStream.ReadDWord : Cardinal;
+{ TCollection and TCollectionItem implementations }
+{$i collect.inc}
 
-    var
-       d : Cardinal;
+{ TList and TThreadList implementations }
+{$i lists.inc}
 
-    begin
-       ReadBuffer(d,4);
-       ReadDWord:=d;
-    end;
+{ TStrings and TStringList implementations }
+{$i strings.inc}
 
-  procedure TStream.WriteByte(b : Byte);
+{ TThread implementation }
+{$i thread.inc}
 
-    begin
-       WriteBuffer(b,1);
-    end;
+{ TPersistent implementation }
+{$i persist.inc }
 
-  procedure TStream.WriteWord(w : Word);
+{ TComponent implementation }
+{$i compon.inc}
 
-    begin
-       WriteBuffer(w,2);
-    end;
+{**********************************************************************
+ *       Miscellaneous procedures and functions                       *
+ **********************************************************************}
 
-  procedure TStream.WriteDWord(d : Cardinal);
+{ Point and rectangle constructors }
 
-    begin
-       WriteBuffer(d,4);
-    end;
+function Point(AX, AY: Integer): TPoint;
 
-{****************************************************************************}
-{*                             TList                                        *}
-{****************************************************************************}
+begin
+end;
 
-{  TList = class(TObject)
-  private
-    FList: PPointerList;
-    FCount: Integer;
-    FCapacity: Integer;
-}
 
-function TList.Get(Index: Integer): Pointer;
+function SmallPoint(AX, AY: SmallInt): TSmallPoint;
 
 begin
 end;
 
 
+function Rect(ALeft, ATop, ARight, ABottom: Integer): TRect;
 
-procedure TList.Grow;
+begin
+end;
+
+
+function Bounds(ALeft, ATop, AWidth, AHeight: Integer): TRect;
 
 begin
 end;
 
 
 
-procedure TList.Put(Index: Integer; Item: Pointer);
+{ Class registration routines }
+
+procedure RegisterClass(AClass: TPersistentClass);
 
 begin
 end;
 
 
+procedure RegisterClasses(AClasses: array of TPersistentClass);
+
+begin
+end;
+
 
-procedure TList.SetCapacity(NewCapacity: Integer);
+procedure RegisterClassAlias(AClass: TPersistentClass; const Alias: string);
 
 begin
 end;
 
 
+procedure UnRegisterClass(AClass: TPersistentClass);
 
-procedure TList.SetCount(NewCount: Integer);
+begin
+end;
+
+
+procedure UnRegisterClasses(AClasses: array of TPersistentClass);
 
 begin
 end;
 
 
+procedure UnRegisterModuleClasses(Module: HMODULE);
+
+begin
+end;
+
 
-destructor TList.Destroy;
+function FindClass(const ClassName: string): TPersistentClass;
 
 begin
-  Clear;
-  inherited Destroy;
 end;
 
 
-Function TList.Add(Item: Pointer): Integer;
+function GetClass(const ClassName: string): TPersistentClass;
 
 begin
-  Self.Insert (Count,Item);
 end;
 
 
 
-Procedure TList.Clear;
+{ Component registration routines }
+
+procedure RegisterComponents(const Page: string;
+  ComponentClasses: array of TComponentClass);
 
 begin
 end;
 
 
+procedure RegisterNoIcon(ComponentClasses: array of TComponentClass);
 
-Procedure TList.Delete(Index: Integer);
+begin
+end;
 
 
+procedure RegisterNonActiveX(ComponentClasses: array of TComponentClass;
+  AxRegType: TActiveXRegType);
 
 begin
 end;
 
 
-class procedure Error(const Msg: string; Data: Integer);
+
+
+{ Object filing routines }
+
+procedure RegisterIntegerConsts(IntegerType: Pointer; IdentToInt: TIdentToInt;
+  IntToIdent: TIntToIdent);
 
 begin
 end;
 
-procedure TList.Exchange(Index1, Index2: Integer);
 
+function IdentToInt(const Ident: string; var Int: Longint; const Map: array of TIdentMapEntry): Boolean;
 
 begin
 end;
 
 
+function IntToIdent(Int: Longint; var Ident: string; const Map: array of TIdentMapEntry): Boolean;
 
-function TList.Expand: TList;
+begin
+end;
+
+
+function InitInheritedComponent(Instance: TComponent; RootAncestor: TClass): Boolean;
+
+begin
+end;
 
 
+function InitComponentRes(const ResName: string; Instance: TComponent): Boolean;
+
 begin
 end;
 
 
-function TList.First: Pointer;
+function ReadComponentRes(const ResName: string; Instance: TComponent): TComponent;
 
 begin
 end;
 
 
+function ReadComponentResEx(HInstance: THandle; const ResName: string): TComponent;
+
+begin
+end;
+
+
+function ReadComponentResFile(const FileName: string; Instance: TComponent): TComponent;
+
+begin
+end;
 
-function TList.IndexOf(Item: Pointer): Integer;
+
+procedure WriteComponentResFile(const FileName: string; Instance: TComponent);
 
 begin
 end;
 
 
 
-procedure TList.Insert(Index: Integer; Item: Pointer);
+procedure GlobalFixupReferences;
 
 begin
 end;
 
 
+procedure GetFixupReferenceNames(Root: TComponent; Names: TStrings);
+
+begin
+end;
+
 
-function TList.Last: Pointer;
+procedure GetFixupInstanceNames(Root: TComponent;
+  const ReferenceRootName: string; Names: TStrings);
 
 begin
 end;
 
 
-procedure TList.Move(CurIndex, NewIndex: Integer);
+procedure RedirectFixupReferences(Root: TComponent; const OldRootName,
+  NewRootName: string);
 
 begin
 end;
 
 
-function TList.Remove(Item: Pointer): Integer;
+procedure RemoveFixupReferences(Root: TComponent; const RootName: string);
 
 begin
 end;
 
 
+procedure RemoveFixups(Instance: TPersistent);
 
-procedure TList.Pack;
 begin
 end;
 
 
 
-procedure TList.Sort(Compare: TListSortCompare);
+procedure BeginGlobalLoading;
 
 begin
 end;
 
+
+procedure NotifyGlobalLoading;
+
+begin
+end;
+
+
+procedure EndGlobalLoading;
+
+begin
+end;
+
+
+
+function CollectionsEqual(C1, C2: TCollection): Boolean;
+
+begin
+end;
+
+
+
+{ Object conversion routines }
+
+procedure ObjectBinaryToText(Input, Output: TStream);
+
+begin
+end;
+
+
+procedure ObjectTextToBinary(Input, Output: TStream);
+
+begin
+end;
+
+
+procedure ObjectResourceToText(Input, Output: TStream);
+
+begin
+end;
+
+
+procedure ObjectTextToResource(Input, Output: TStream);
+
+begin
+end;
+
+
+
+{ Utility routines }
+
+function LineStart(Buffer, BufPos: PChar): PChar;
+
+begin
+end;
+
+
+
+
+{
+  $Log$
+  Revision 1.2  1998-05-04 14:30:11  michael
+  * Split file according to Class; implemented dummys for all methods, so unit compiles.
+
+  Revision 1.9  1998/05/04 12:16:01  florian
+    + Initial revisions after making a new directory structure
+
+  Revision 1.8  1998/05/04 11:20:13  florian
+    + Write* and Read* methods to TStream added
+    * small problems solved
+
+  Revision 1.7  1998/05/04 09:39:51  michael
+  + Started implementation of TList
+
+  Revision 1.6  1998/05/01 22:17:19  florian
+    + TBits implemented
+    + TStream partial implemented
+
+  Revision 1.5  1998/05/01 17:53:12  florian
+    * now it compiles with FPC
+
+  Revision 1.4  1998/04/28 11:47:00  florian
+    * more adaptions to FPC
+
+  Revision 1.3  1998/04/27 12:55:57  florian
+    + uses objpas added
+
+  Revision 1.2  1998/04/27 09:09:49  michael
+  + Added log at the end
+
+}
+
 {
   $Log$
-  Revision 1.1  1998-05-04 12:16:01  florian
+  Revision 1.2  1998-05-04 14:30:11  michael
+  * Split file according to Class; implemented dummys for all methods, so unit compiles.
+
+  Revision 1.1  1998/05/04 12:16:01  florian
     + Initial revisions after making a new directory structure
 
 }

+ 11 - 8
fcl/inc/classesh.inc

@@ -237,7 +237,7 @@ type
     procedure SetIndex(Value: Integer); virtual;
     procedure SetDisplayName(const Value: string); virtual;
   public
-    constructor Create(Collection: TCollection); virtual;
+    constructor Create(ACollection: TCollection); virtual;
     destructor Destroy; override;
     property Collection: TCollection read FCollection write SetCollection;
     property ID: Integer read FID;
@@ -271,7 +271,7 @@ type
     procedure Update(Item: TCollectionItem); virtual;
     property PropName: string read GetPropName write FPropName;
   public
-    constructor Create(ItemClass: TCollectionItemClass);
+    constructor Create(AItemClass: TCollectionItemClass);
     destructor Destroy; override;
     function Add: TCollectionItem;
     procedure Assign(Source: TPersistent); override;
@@ -330,13 +330,13 @@ type
     function Add(const S: string): Integer; virtual;
     function AddObject(const S: string; AObject: TObject): Integer; virtual;
     procedure Append(const S: string);
-    procedure AddStrings(Strings: TStrings); virtual;
+    procedure AddStrings(TheStrings: TStrings); virtual;
     procedure Assign(Source: TPersistent); override;
     procedure BeginUpdate;
     procedure Clear; virtual; abstract;
     procedure Delete(Index: Integer); virtual; abstract;
     procedure EndUpdate;
-    function Equals(Strings: TStrings): Boolean;
+    function Equals(TheStrings: TStrings): Boolean;
     procedure Exchange(Index1, Index2: Integer); virtual;
     function GetText: PChar; virtual;
     function IndexOf(const S: string): Integer; virtual;
@@ -350,7 +350,7 @@ type
     procedure Move(CurIndex, NewIndex: Integer); virtual;
     procedure SaveToFile(const FileName: string); virtual;
     procedure SaveToStream(Stream: TStream); virtual;
-    procedure SetText(Text: PChar); virtual;
+    procedure SetText(TheText: PChar); virtual;
     property Capacity: Integer read GetCapacity write SetCapacity;
     property CommaText: string read GetCommaText write SetCommaText;
     property Count: Integer read GetCount;
@@ -864,7 +864,7 @@ type
     FDesignInfo: Longint;
     FVCLComObject: Pointer;
     FComponentState: TComponentState;
-    function GetComObject: IUnknown;
+    // function GetComObject: IUnknown;
     function GetComponent(AIndex: Integer): TComponent;
     function GetComponentCount: Integer;
     function GetComponentIndex: Integer;
@@ -927,7 +927,7 @@ type
     procedure RemoveComponent(AComponent: TComponent);
     function SafeCallException(ExceptObject: TObject;
       ExceptAddr: Pointer): Integer; override;
-    property ComObject: IUnknown read GetComObject;
+    // property ComObject: IUnknown read GetComObject;
     property Components[Index: Integer]: TComponent read GetComponent;
     property ComponentCount: Integer read GetComponentCount;
     property ComponentIndex: Integer read GetComponentIndex write SetComponentIndex;
@@ -1043,7 +1043,10 @@ function LineStart(Buffer, BufPos: PChar): PChar;
 
 {
   $Log$
-  Revision 1.1  1998-05-04 12:16:01  florian
+  Revision 1.2  1998-05-04 14:30:11  michael
+  * Split file according to Class; implemented dummys for all methods, so unit compiles.
+
+  Revision 1.1  1998/05/04 12:16:01  florian
     + Initial revisions after making a new directory structure
 
 }

+ 238 - 0
fcl/inc/collect.inc

@@ -0,0 +1,238 @@
+{
+    $Id$
+    This file is part of the Free Component Library (FCL)
+    Copyright (c) 1998 by the Free Pascal development team
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+{****************************************************************************}
+{*                             TCollectionItem                              *}
+{****************************************************************************}
+
+
+function TCollectionItem.GetIndex: Integer;
+
+begin
+end;
+
+
+
+procedure TCollectionItem.SetCollection(Value: TCollection);
+
+begin
+end;
+
+
+
+procedure TCollectionItem.Changed(AllItems: Boolean);
+
+begin
+end;
+
+
+
+function TCollectionItem.GetNamePath: string;
+
+begin
+end;
+
+
+function TCollectionItem.GetOwner: TPersistent;
+
+begin
+end;
+
+
+
+function TCollectionItem.GetDisplayName: string; 
+
+begin
+end;
+
+
+
+procedure TCollectionItem.SetIndex(Value: Integer);
+
+begin
+end;
+
+
+procedure TCollectionItem.SetDisplayName(const Value: string);
+
+begin
+end;
+
+
+
+constructor TCollectionItem.Create(ACollection: TCollection); 
+
+begin
+end;
+
+
+
+destructor TCollectionItem.Destroy; 
+
+begin
+end;
+
+{****************************************************************************}
+{*                             TCollection                                  *}
+{****************************************************************************}
+
+
+
+function TCollection.GetCount: Integer;
+
+begin
+end;
+
+
+
+function TCollection.GetPropName: string;
+
+begin
+end;
+
+
+
+procedure TCollection.InsertItem(Item: TCollectionItem);
+
+begin
+end;
+
+
+
+procedure TCollection.RemoveItem(Item: TCollectionItem);
+
+begin
+end;
+
+
+function TCollection.GetAttrCount: Integer; 
+
+begin
+end;
+
+
+function TCollection.GetAttr(Index: Integer): string; 
+
+begin
+end;
+
+
+
+function TCollection.GetItemAttr(Index, ItemIndex: Integer): string; 
+
+begin
+end;
+
+
+
+function TCollection.GetNamePath: string; 
+
+begin
+end;
+
+
+
+procedure TCollection.Changed;
+
+begin
+end;
+
+
+
+function TCollection.GetItem(Index: Integer): TCollectionItem;
+
+begin
+end;
+
+
+
+procedure TCollection.SetItem(Index: Integer; Value: TCollectionItem);
+
+begin
+end;
+
+
+
+procedure TCollection.SetItemName(Item: TCollectionItem); 
+
+begin
+end;
+
+
+
+procedure TCollection.Update(Item: TCollectionItem);
+
+begin
+end;
+
+
+
+constructor TCollection.Create(AItemClass: TCollectionItemClass);
+
+begin
+end;
+
+
+
+destructor TCollection.Destroy; 
+
+begin
+end;
+
+
+
+function TCollection.Add: TCollectionItem;
+
+begin
+end;
+
+
+
+procedure TCollection.Assign(Source: TPersistent);
+
+begin
+end;
+
+
+
+procedure TCollection.BeginUpdate;
+
+begin
+end;
+
+
+
+procedure TCollection.Clear;
+
+begin
+end;
+
+
+
+procedure TCollection.EndUpdate;
+
+begin
+end;
+
+
+
+function TCollection.FindItemID(ID: Integer): TCollectionItem;
+
+begin
+end;
+{
+  $Log$
+  Revision 1.1  1998-05-04 14:30:11  michael
+  * Split file according to Class; implemented dummys for all methods, so unit compiles.
+
+}

+ 297 - 0
fcl/inc/compon.inc

@@ -0,0 +1,297 @@
+{
+    $Id$
+    This file is part of the Free Component Library (FCL)
+    Copyright (c) 1998 by the Free Pascal development team
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+
+{****************************************************************************}
+{*                             TComponent                                   *}
+{****************************************************************************}
+
+
+Function  TComponent.GetComponent(AIndex: Integer): TComponent;
+
+begin
+end;
+
+
+Function  TComponent.GetComponentCount: Integer;
+
+begin
+end;
+
+
+Function  TComponent.GetComponentIndex: Integer;
+
+begin
+end;
+
+
+Procedure TComponent.Insert(AComponent: TComponent);
+
+begin
+end;
+
+
+Procedure TComponent.ReadLeft(Reader: TReader);
+
+begin
+end;
+
+
+Procedure TComponent.ReadTop(Reader: TReader);
+
+begin
+end;
+
+
+Procedure TComponent.Remove(AComponent: TComponent);
+
+begin
+end;
+
+
+Procedure TComponent.SetComponentIndex(Value: Integer);
+
+begin
+end;
+
+
+Procedure TComponent.SetReference(Enable: Boolean);
+
+begin
+end;
+
+
+Procedure TComponent.WriteLeft(Writer: TWriter);
+
+begin
+end;
+
+
+Procedure TComponent.WriteTop(Writer: TWriter);
+
+begin
+end;
+
+
+Procedure TComponent.ChangeName(const NewName: TComponentName);
+
+begin
+end;
+
+
+Procedure TComponent.DefineProperties(Filer: TFiler); 
+
+begin
+end;
+
+
+Procedure TComponent.GetChildren(Proc: TGetChildProc; Root: TComponent);
+
+begin
+end;
+
+
+Function  TComponent.GetChildOwner: TComponent;
+
+begin
+end;
+
+
+Function  TComponent.GetChildParent: TComponent; 
+
+begin
+end;
+
+
+Function  TComponent.GetNamePath: string; 
+
+begin
+end;
+
+
+Function  TComponent.GetOwner: TPersistent; 
+
+begin
+end;
+
+
+Procedure TComponent.Loaded; 
+
+begin
+end;
+
+
+Procedure TComponent.Notification(AComponent: TComponent;
+  Operation: TOperation);
+
+begin
+end;
+
+
+Procedure TComponent.ReadState(Reader: TReader); 
+
+begin
+end;
+
+
+Procedure TComponent.SetAncestor(Value: Boolean);
+
+begin
+end;
+
+
+Procedure TComponent.SetDesigning(Value: Boolean);
+
+begin
+end;
+
+
+Procedure TComponent.SetName(const NewName: TComponentName); 
+
+begin
+end;
+
+
+Procedure TComponent.SetChildOrder(Child: TComponent; Order: Integer);
+
+begin
+end;
+
+
+Procedure TComponent.SetParentComponent(Value: TComponent);
+
+begin
+end;
+
+
+Procedure TComponent.Updating; 
+
+begin
+end;
+
+
+Procedure TComponent.Updated; 
+
+begin
+end;
+
+
+class Procedure TComponent.UpdateRegistry(Register: Boolean; const ClassID, ProgID: string); 
+
+begin
+end;
+
+
+Procedure TComponent.ValidateRename(AComponent: TComponent;
+  const CurName, NewName: string); 
+
+begin
+end;
+
+
+Procedure TComponent.ValidateContainer(AComponent: TComponent); 
+
+begin
+end;
+
+
+Procedure TComponent.ValidateInsert(AComponent: TComponent); 
+
+begin
+end;
+
+
+Procedure TComponent.WriteState(Writer: TWriter); 
+
+begin
+end;
+
+
+Constructor TComponent.Create(AOwner: TComponent); 
+
+begin
+end;
+
+
+Destructor TComponent.Destroy; 
+
+begin
+end;
+
+
+Procedure TComponent.DestroyComponents;
+
+begin
+end;
+
+
+Procedure TComponent.Destroying;
+
+begin
+end;
+
+
+Function  TComponent.FindComponent(const AName: string): TComponent;
+
+begin
+end;
+
+
+Procedure TComponent.FreeNotification(AComponent: TComponent);
+
+begin
+end;
+
+
+Procedure TComponent.FreeOnRelease;
+
+begin
+end;
+
+
+Function  TComponent.GetParentComponent: TComponent; 
+
+begin
+end;
+
+
+Function  TComponent.HasParent: Boolean; 
+
+begin
+end;
+
+
+Procedure TComponent.InsertComponent(AComponent: TComponent);
+
+begin
+end;
+
+
+Procedure TComponent.RemoveComponent(AComponent: TComponent);
+
+begin
+end;
+
+
+Function  TComponent.SafeCallException(ExceptObject: TObject;
+  ExceptAddr: Pointer): Integer; 
+
+begin
+end;
+
+{
+  $Log$
+  Revision 1.1  1998-05-04 14:30:11  michael
+  * Split file according to Class; implemented dummys for all methods, so unit compiles.
+
+}

+ 32 - 0
fcl/inc/filer.inc

@@ -0,0 +1,32 @@
+{
+    $Id$
+    This file is part of the Free Component Library (FCL)
+    Copyright (c) 1998 by the Free Pascal development team
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+{ *********************************************************************
+  *                         TFiler                                    *
+  *********************************************************************}
+
+Constructor TFiler.Create(Stream: TStream; BufSize: Integer);
+
+begin
+end;
+
+
+Destructor TFiler.Destroy;
+
+begin
+end;{
+  $Log$
+  Revision 1.1  1998-05-04 14:30:11  michael
+  * Split file according to Class; implemented dummys for all methods, so unit compiles.
+
+}

+ 217 - 0
fcl/inc/lists.inc

@@ -0,0 +1,217 @@
+{
+    $Id$
+    This file is part of the Free Component Library (FCL)
+    Copyright (c) 1998 by the Free Pascal development team
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+{****************************************************************************}
+{*                             TList                                        *}
+{****************************************************************************}
+
+{  TList = class(TObject)
+  private
+    FList: PPointerList;
+    FCount: Integer;
+    FCapacity: Integer;
+}
+
+function TList.Get(Index: Integer): Pointer;
+
+begin
+end;
+
+
+
+procedure TList.Grow;
+
+begin
+end;
+
+
+
+procedure TList.Put(Index: Integer; Item: Pointer);
+
+begin
+end;
+
+
+
+procedure TList.SetCapacity(NewCapacity: Integer);
+
+begin
+end;
+
+
+
+procedure TList.SetCount(NewCount: Integer);
+
+begin
+end;
+
+
+
+destructor TList.Destroy;
+
+begin
+  Clear;
+  inherited Destroy;
+end;
+
+
+Function TList.Add(Item: Pointer): Integer;
+
+begin
+//  Self.Insert (Count,Item);
+end;
+
+
+
+Procedure TList.Clear;
+
+begin
+end;
+
+
+
+Procedure TList.Delete(Index: Integer);
+
+begin
+end;
+
+
+class procedure TList.Error(const Msg: string; Data: Integer);
+
+begin
+end;
+
+procedure TList.Exchange(Index1, Index2: Integer);
+
+
+begin
+end;
+
+
+
+function TList.Expand: TList;
+
+
+begin
+end;
+
+
+function TList.First: Pointer;
+
+begin
+end;
+
+
+
+function TList.IndexOf(Item: Pointer): Integer;
+
+begin
+end;
+
+
+
+procedure TList.Insert(Index: Integer; Item: Pointer);
+
+begin
+end;
+
+
+
+function TList.Last: Pointer;
+
+begin
+end;
+
+
+procedure TList.Move(CurIndex, NewIndex: Integer);
+
+begin
+end;
+
+
+function TList.Remove(Item: Pointer): Integer;
+
+begin
+end;
+
+
+
+procedure TList.Pack;
+begin
+end;
+
+
+
+procedure TList.Sort(Compare: TListSortCompare);
+
+begin
+end;
+
+
+{****************************************************************************}
+{*                             TThreadList                                  *}
+{****************************************************************************}
+
+
+constructor TThreadList.Create;
+
+begin
+end;
+
+
+    
+destructor TThreadList.Destroy; 
+
+begin
+end;
+
+
+
+procedure TThreadList.Add(Item: Pointer);
+
+begin
+end;
+
+
+procedure TThreadList.Clear;
+
+begin
+end;
+
+
+
+function TThreadList.LockList: TList;
+
+begin
+end;
+
+
+
+procedure TThreadList.Remove(Item: Pointer);
+
+
+begin
+end;
+
+
+
+procedure TThreadList.UnlockList;
+
+begin
+end;
+{
+  $Log$
+  Revision 1.1  1998-05-04 14:30:12  michael
+  * Split file according to Class; implemented dummys for all methods, so unit compiles.
+
+}

+ 124 - 0
fcl/inc/parser.inc

@@ -0,0 +1,124 @@
+{
+    $Id$
+    This file is part of the Free Component Library (FCL)
+    Copyright (c) 1998 by the Free Pascal development team
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+{****************************************************************************}
+{*                             TParser                                      *}
+{****************************************************************************}
+
+Procedure TParser.ReadBuffer;
+
+begin
+end;
+
+
+Procedure TParser.SkipBlanks;
+
+begin
+end;
+
+
+constructor TParser.Create(Stream: TStream);
+
+begin
+end;
+
+
+destructor TParser.Destroy;
+
+begin
+end;
+
+
+Procedure TParser.CheckToken(T: Char);
+
+begin
+end;
+
+
+Procedure TParser.CheckTokenSymbol(const S: string);
+
+begin
+end;
+
+
+Procedure TParser.Error(const Ident: string);
+
+begin
+end;
+
+
+{!!!!!!
+Procedure TParser.ErrorFmt(const Ident: string; const Args: array of const);
+
+begin
+end;
+!!!!!!}
+
+Procedure TParser.ErrorStr(const Message: string);
+
+begin
+end;
+
+
+Procedure TParser.HexToBinary(Stream: TStream);
+
+begin
+end;
+
+
+Function TParser.NextToken: Char;
+
+begin
+end;
+
+
+Function TParser.SourcePos: Longint;
+
+begin
+end;
+
+
+Function TParser.TokenComponentIdent: String;
+
+begin
+end;
+
+
+Function TParser.TokenFloat: Extended;
+
+begin
+end;
+
+
+Function TParser.TokenInt: Longint;
+
+begin
+end;
+
+
+Function TParser.TokenString: string;
+
+begin
+end;
+
+
+Function TParser.TokenSymbolIs(const S: string): Boolean;
+
+begin
+end;
+{
+  $Log$
+  Revision 1.1  1998-05-04 14:30:12  michael
+  * Split file according to Class; implemented dummys for all methods, so unit compiles.
+
+}

+ 63 - 0
fcl/inc/persist.inc

@@ -0,0 +1,63 @@
+{
+    $Id$
+    This file is part of the Free Component Library (FCL)
+    Copyright (c) 1998 by the Free Pascal development team
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+{****************************************************************************}
+{*                             TPersistent                                  *}
+{****************************************************************************}
+
+
+procedure TPersistent.AssignError(Source: TPersistent);
+begin
+end;
+
+
+
+procedure TPersistent.AssignTo(Dest: TPersistent);
+
+
+begin
+end;
+
+
+procedure TPersistent.DefineProperties(Filer: TFiler);
+
+begin
+end;
+
+
+function  TPersistent.GetOwner: TPersistent;
+
+begin
+end;
+
+destructor TPersistent.Destroy; 
+
+begin
+end;
+
+
+procedure TPersistent.Assign(Source: TPersistent);
+
+begin
+end;
+
+function  TPersistent.GetNamePath: string;
+
+begin
+end;
+{
+  $Log$
+  Revision 1.1  1998-05-04 14:30:12  michael
+  * Split file according to Class; implemented dummys for all methods, so unit compiles.
+
+}

+ 362 - 0
fcl/inc/reader.inc

@@ -0,0 +1,362 @@
+{
+    $Id$
+    This file is part of the Free Component Library (FCL)
+    Copyright (c) 1998 by the Free Pascal development team
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+{****************************************************************************}
+{*                             TREADER                                      *}
+{****************************************************************************}
+
+Procedure TReader.CheckValue(Value: TValueType);
+
+begin
+end;
+
+
+
+Procedure TReader.DoFixupReferences;
+
+begin
+end;
+
+
+
+Procedure TReader.FreeFixups;
+
+begin
+end;
+
+
+
+Function TReader.GetPosition: Longint;
+
+begin
+end;
+
+
+
+Procedure TReader.PropertyError;
+
+begin
+end;
+
+
+
+Procedure TReader.ReadBuffer;
+
+begin
+end;
+
+
+
+Procedure TReader.ReadData(Instance: TComponent);
+
+begin
+end;
+
+
+
+Procedure TReader.ReadDataInner(Instance: TComponent);
+
+begin
+end;
+
+
+
+Procedure TReader.ReadProperty(AInstance: TPersistent);
+
+begin
+end;
+
+
+
+Procedure TReader.ReadPropValue(Instance: TPersistent; PropInfo: Pointer);
+
+begin
+end;
+
+
+
+Function TReader.ReadSet(SetType: Pointer): Integer;
+
+begin
+end;
+
+
+
+Procedure TReader.SetPosition(Value: Longint);
+
+begin
+end;
+
+
+
+Procedure TReader.SkipSetBody;
+
+begin
+end;
+
+
+
+Procedure TReader.SkipValue;
+
+begin
+end;
+
+
+
+Procedure TReader.SkipProperty;
+
+begin
+end;
+
+
+
+Procedure TReader.SkipComponent(SkipHeader: Boolean);
+
+begin
+end;
+
+
+
+Function TReader.Error(const Message: string): Boolean; 
+
+begin
+end;
+
+
+
+Function TReader.FindMethod(Root: TComponent; const MethodName: string): Pointer; 
+
+begin
+end;
+
+
+
+Procedure TReader.SetName(Component: TComponent; var Name: string); 
+
+begin
+end;
+
+
+
+Procedure TReader.ReferenceName(var Name: string); 
+
+begin
+end;
+
+
+
+Function TReader.FindAncestorComponent(const Name: string;
+  ComponentClass: TPersistentClass): TComponent; 
+
+begin
+end;
+
+
+
+destructor TReader.Destroy; 
+
+begin
+end;
+
+
+
+Procedure TReader.BeginReferences;
+
+begin
+end;
+
+
+
+Procedure TReader.DefineProperty(const Name: string;
+  rd : TReaderProc; wd : TWriterProc;
+  HasData: Boolean); 
+
+begin
+end;
+
+
+
+Procedure TReader.DefineBinaryProperty(const Name: string;
+  rd, wd: TStreamProc;
+  HasData: Boolean); 
+
+begin
+end;
+
+
+
+Function TReader.EndOfList: Boolean;
+
+begin
+end;
+
+
+
+Procedure TReader.EndReferences;
+
+begin
+end;
+
+
+
+Procedure TReader.FixupReferences;
+
+begin
+end;
+
+
+
+Procedure TReader.FlushBuffer; 
+
+begin
+end;
+
+
+
+Function TReader.NextValue: TValueType;
+
+begin
+end;
+
+
+
+Procedure TReader.Read(var Buf; Count: Longint);
+
+begin
+end;
+
+
+
+Function TReader.ReadBoolean: Boolean;
+
+begin
+end;
+
+
+
+Function TReader.ReadChar: Char;
+
+begin
+end;
+
+
+
+Procedure TReader.ReadCollection(Collection: TCollection);
+
+begin
+end;
+
+
+
+Function TReader.ReadComponent(Component: TComponent): TComponent;
+
+begin
+end;
+
+
+
+Procedure TReader.ReadComponents(AOwner, AParent: TComponent;
+  Proc: TReadComponentsProc);
+
+begin
+end;
+
+
+
+Function TReader.ReadFloat: Extended;
+
+begin
+end;
+
+
+
+Function TReader.ReadIdent: string;
+
+begin
+end;
+
+
+
+Function TReader.ReadInteger: Longint;
+
+begin
+end;
+
+
+
+Procedure TReader.ReadListBegin;
+
+begin
+end;
+
+
+
+Procedure TReader.ReadListEnd;
+
+begin
+end;
+
+
+
+Procedure TReader.ReadPrefix(var Flags: TFilerFlags; var AChildPos: Integer);
+
+begin
+end;
+
+
+
+Function TReader.ReadRootComponent(Root: TComponent): TComponent;
+
+begin
+end;
+
+
+
+Procedure TReader.ReadSignature;
+
+begin
+end;
+
+
+
+Function TReader.ReadStr: string;
+
+begin
+end;
+
+
+
+Function TReader.ReadString: string;
+
+begin
+end;
+
+
+
+Function TReader.ReadValue: TValueType;
+
+begin
+end;
+
+
+
+Procedure TReader.CopyValue(Writer: TWriter); {!!!}
+
+begin
+end;
+{
+  $Log$
+  Revision 1.1  1998-05-04 14:30:12  michael
+  * Split file according to Class; implemented dummys for all methods, so unit compiles.
+
+}

+ 472 - 0
fcl/inc/streams.inc

@@ -0,0 +1,472 @@
+{
+    $Id$
+    This file is part of the Free Component Library (FCL)
+    Copyright (c) 1998 by the Free Pascal development team
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+{****************************************************************************}
+{*                             TStream                                      *}
+{****************************************************************************}
+
+  function TStream.GetPosition: Longint;
+
+    begin
+       GetPosition:=Seek(0,soFromCurrent);
+    end;
+
+  procedure TStream.SetPosition(Pos: Longint);
+
+    begin
+       Seek(soFromBeginning,Pos);
+    end;
+
+  function TStream.GetSize: Longint;
+
+    var
+       p : longint;
+
+    begin
+       p:=GetPosition;
+       GetSize:=Seek(soFromEnd,0);
+       Seek(soFromBeginning,p);
+    end;
+
+  procedure TStream.SetSize(NewSize: Longint);
+
+    begin
+       SetPosition(NewSize);
+    end;
+
+  procedure TStream.ReadBuffer(var Buffer; Count: Longint);
+
+    begin
+       if Read(Buffer,Count)<Count then
+{$ifdef NoExceptions}
+         ;
+{$else}
+         Raise(EReadError);
+{$endif}
+    end;
+
+  procedure TStream.WriteBuffer(const Buffer; Count: Longint);
+
+    begin
+       if Write(Buffer,Count)<Count then
+{$ifdef NoExceptions}
+         ;
+{$else}
+         Raise(EWriteError);
+{$endif}
+    end;
+
+  function TStream.CopyFrom(Source: TStream; Count: Longint): Longint;
+
+    var
+       i : longint;
+       buffer : array[0..1023] of byte;
+
+    begin
+       CopyFrom:=0;
+       while Count>0 do
+         begin
+            if (Count>sizeof(buffer)) then
+              i:=sizeof(Buffer)
+            else
+              i:=Count;
+            i:=Source.Read(buffer,i);
+            i:=Write(buffer,i);
+            dec(count,i);
+            CopyFrom:=CopyFrom+i;
+            if i=0 then
+              exit;
+         end;
+    end;
+
+  function TStream.ReadComponent(Instance: TComponent): TComponent;
+
+    var
+       Reader : TReader;
+
+    begin
+       Reader.Create(Self,1024);
+       if assigned(Instance) then
+         ReadComponent:=Reader.ReadRootComponent(Instance)
+       else
+         begin
+            {!!!!!}
+         end;
+       Reader.Destroy;
+    end;
+
+  function TStream.ReadComponentRes(Instance: TComponent): TComponent;
+
+    begin
+       {!!!!!}
+    end;
+
+  procedure TStream.WriteComponent(Instance: TComponent);
+
+    var
+       Writer : TWriter;
+
+    begin
+       Writer.Create(Self,1024);
+       Writer.WriteRootComponent(Instance);
+       Writer.Destroy;
+    end;
+
+  procedure TStream.WriteComponentRes(const ResName: string; Instance: TComponent);
+
+    var
+       startpos,s : longint;
+
+    begin
+(* 
+{$ifdef Win16Res}
+       { Numeric resource type }
+       WriteByte($ff);
+       { Application defined data }
+       WriteWord($0a);
+       { write the name as asciiz }
+       WriteData(ResName[1],length(ResName));
+       WriteByte(0);
+       { Movable, Pure and Discardable }
+       WriteWord($1030);
+       { size isn't known yet }
+       WriteDWord(0);
+       startpos:=GetPosition;
+       WriteComponent(Instance);
+       { calculate size }
+       s:=GetPosition-startpos;
+       { back patch size }
+       SetPosition(startpos-4);
+       WriteDWord(s);
+{$endif Win16Res}
+*)
+    end;
+
+  procedure TStream.WriteDescendent(Instance, Ancestor: TComponent);
+
+    begin
+       {!!!!!}
+    end;
+
+  procedure TStream.WriteDescendentRes(const ResName: string; Instance, Ancestor: TComponent);
+
+    begin
+       {!!!!!}
+    end;
+
+  procedure TStream.ReadResHeader;
+
+    begin
+{$ifdef Win16Res}
+       try
+         { application specific resource ? }
+         if ReadByte<>$ff then
+           raise EInvalidImage;
+         if ReadWord<>$000a then
+           raise EInvalidImage;
+         { read name }
+         while ReadByte<>0 do
+           ;
+         { check the access specifier }
+         if ReadWord<>$1030 then
+           raise EInvalidImage;
+         { ignore the size }
+         ReadDWord;
+       except
+{/////
+         on EInvalidImage do
+           raise;
+         else
+           raise(EInvalidImage);
+}
+       end;
+{$endif Win16Res}
+    end;
+
+  function TStream.ReadByte : Byte;
+
+    var
+       b : Byte;
+
+    begin
+       ReadBuffer(b,1);
+       ReadByte:=b;
+    end;
+
+  function TStream.ReadWord : Word;
+
+    var
+       w : Word;
+
+    begin
+       ReadBuffer(w,2);
+       ReadWord:=w;
+    end;
+
+  function TStream.ReadDWord : Cardinal;
+
+    var
+       d : Cardinal;
+
+    begin
+       ReadBuffer(d,4);
+       ReadDWord:=d;
+    end;
+
+  procedure TStream.WriteByte(b : Byte);
+
+    begin
+       WriteBuffer(b,1);
+    end;
+
+  procedure TStream.WriteWord(w : Word);
+
+    begin
+       WriteBuffer(w,2);
+    end;
+
+  procedure TStream.WriteDWord(d : Cardinal);
+
+    begin
+       WriteBuffer(d,4);
+    end;
+
+
+
+
+
+
+
+{****************************************************************************}
+{*                             THandleStream                                *}
+{****************************************************************************}
+
+Procedure THandleStream.SetSize(NewSize: Longint);
+
+begin
+end;
+
+
+Constructor THandleStream.Create(AHandle: Integer);
+
+begin
+end;
+
+
+function THandleStream.Read(var Buffer; Count: Longint): Longint;
+
+begin
+end;
+
+
+function THandleStream.Write(const Buffer; Count: Longint): Longint;
+
+begin
+end;
+
+
+function THandleStream.Seek(Offset: Longint; Origin: Word): Longint;
+
+begin
+end;
+
+
+{****************************************************************************}
+{*                             TFileStream                                  *}
+{****************************************************************************}
+
+constructor TFileStream.Create(const FileName: string; Mode: Word);
+
+begin
+end;
+
+
+destructor TFileStream.Destroy;
+
+begin
+end;
+
+{****************************************************************************}
+{*                             TCustomMemoryStream                          *}
+{****************************************************************************}
+
+procedure TCustomMemoryStream.SetPointer(Ptr: Pointer; Size: Longint);
+
+begin
+end;
+
+
+function TCustomMemoryStream.Read(var Buffer; Count: Longint): Longint;
+
+begin
+end;
+
+
+function TCustomMemoryStream.Seek(Offset: Longint; Origin: Word): Longint;
+
+begin
+end;
+
+
+procedure TCustomMemoryStream.SaveToStream(Stream: TStream);
+
+begin
+end;
+
+
+procedure TCustomMemoryStream.SaveToFile(const FileName: string);
+
+begin
+end;
+
+
+{****************************************************************************}
+{*                             TMemoryStream                                *}
+{****************************************************************************}
+
+
+procedure TMemoryStream.SetCapacity(NewCapacity: Longint);
+
+begin
+end;
+
+
+function TMemoryStream.Realloc(var NewCapacity: Longint): Pointer;
+
+begin
+end;
+
+
+destructor TMemoryStream.Destroy;
+
+begin
+end;
+
+
+procedure TMemoryStream.Clear;
+
+begin
+end;
+
+
+procedure TMemoryStream.LoadFromStream(Stream: TStream);
+
+begin
+end;
+
+
+procedure TMemoryStream.LoadFromFile(const FileName: string);
+
+begin
+end;
+
+
+procedure TMemoryStream.SetSize(NewSize: Longint);
+
+begin
+end;
+
+
+function TMemoryStream.Write(const Buffer; Count: Longint): Longint; 
+
+begin
+end;
+
+
+{****************************************************************************}
+{*                             TStringStream                                *}
+{****************************************************************************}
+
+procedure TStringStream.SetSize(NewSize: Longint); 
+
+begin
+end;
+
+
+constructor TStringStream.Create(const AString: string);
+
+begin
+end;
+
+
+function TStringStream.Read(var Buffer; Count: Longint): Longint; 
+
+begin
+end;
+
+
+function TStringStream.ReadString(Count: Longint): string;
+
+begin
+end;
+
+
+function TStringStream.Seek(Offset: Longint; Origin: Word): Longint; 
+
+begin
+end;
+
+
+function TStringStream.Write(const Buffer; Count: Longint): Longint; 
+
+begin
+end;
+
+
+procedure TStringStream.WriteString(const AString: string);
+
+begin
+end;
+
+
+
+{****************************************************************************}
+{*                             TResourceStream                              *}
+{****************************************************************************}
+
+procedure TResourceStream.Initialize(Instance: THandle; Name, ResType: PChar);
+
+begin
+end;
+
+
+constructor TResourceStream.Create(Instance: THandle; const ResName: string; ResType: PChar);
+
+begin
+end;
+
+
+constructor TResourceStream.CreateFromID(Instance: THandle; ResID: Integer; ResType: PChar);
+
+begin
+end;
+
+
+destructor TResourceStream.Destroy; 
+
+begin
+end;
+
+
+function TResourceStream.Write(const Buffer; Count: Longint): Longint; 
+
+begin
+end;
+
+
+{
+  $Log$
+  Revision 1.1  1998-05-04 14:30:12  michael
+  * Split file according to Class; implemented dummys for all methods, so unit compiles.
+
+}

+ 468 - 0
fcl/inc/strings.inc

@@ -0,0 +1,468 @@
+{
+    $Id$
+    This file is part of the Free Component Library (FCL)
+    Copyright (c) 1998 by the Free Pascal development team
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+{****************************************************************************}
+{*                             TStrings                                     *}
+{****************************************************************************}
+
+
+function TStrings.GetCommaText: string;
+
+begin
+end;
+
+
+
+function TStrings.GetName(Index: Integer): string;
+
+begin
+end;
+
+
+
+Function TStrings.GetValue(const Name: string): string;
+
+begin
+end;
+
+
+
+Procedure TStrings.ReadData(Reader: TReader);
+
+begin
+end;
+
+
+
+Procedure TStrings.SetCommaText(const Value: string);
+
+begin
+end;
+
+
+
+Procedure TStrings.SetStringsAdapter(const Value: IStringsAdapter);
+
+begin
+end;
+
+
+
+Procedure TStrings.SetValue(const Name, Value: string);
+
+begin
+end;
+
+
+
+Procedure TStrings.WriteData(Writer: TWriter);
+
+begin
+end;
+
+
+
+Procedure TStrings.DefineProperties(Filer: TFiler); 
+
+begin
+end;
+
+
+
+Procedure TStrings.Error(const Msg: string; Data: Integer);
+
+begin
+end;
+
+
+
+Function TStrings.GetCapacity: Integer; 
+
+begin
+end;
+
+
+
+Function TStrings.GetObject(Index: Integer): TObject; 
+
+begin
+end;
+
+
+
+Function TStrings.GetTextStr: string; 
+
+begin
+end;
+
+
+
+Procedure TStrings.Put(Index: Integer; const S: string); 
+
+begin
+end;
+
+
+
+Procedure TStrings.PutObject(Index: Integer; AObject: TObject); 
+
+begin
+end;
+
+
+
+Procedure TStrings.SetCapacity(NewCapacity: Integer); 
+
+begin
+end;
+
+
+
+Procedure TStrings.SetTextStr(const Value: string); 
+
+begin
+end;
+
+
+
+Procedure TStrings.SetUpdateState(Updating: Boolean); 
+
+begin
+end;
+
+
+
+destructor TSTrings.Destroy; 
+
+begin
+end;
+
+
+
+Function TStrings.Add(const S: string): Integer; 
+
+begin
+end;
+
+
+
+Function TStrings.AddObject(const S: string; AObject: TObject): Integer; 
+
+begin
+end;
+
+
+
+Procedure TStrings.Append(const S: string);
+
+begin
+end;
+
+
+
+Procedure TStrings.AddStrings(TheStrings: TStrings); 
+
+begin
+end;
+
+
+
+Procedure TStrings.Assign(Source: TPersistent); 
+
+begin
+end;
+
+
+
+Procedure TStrings.BeginUpdate;
+
+begin
+end;
+
+
+
+Procedure TStrings.EndUpdate;
+
+begin
+end;
+
+
+
+Function TStrings.Equals(TheStrings: TStrings): Boolean;
+
+begin
+end;
+
+
+
+Procedure TStrings.Exchange(Index1, Index2: Integer); 
+
+begin
+end;
+
+
+
+Function TStrings.GetText: PChar; 
+
+begin
+end;
+
+
+
+Function TStrings.IndexOf(const S: string): Integer; 
+
+begin
+end;
+
+
+
+Function TStrings.IndexOfName(const Name: string): Integer;
+
+begin
+end;
+
+
+
+Function TStrings.IndexOfObject(AObject: TObject): Integer;
+
+begin
+end;
+
+
+
+Procedure TStrings.InsertObject(Index: Integer; const S: string;
+  AObject: TObject);
+
+begin
+end;
+
+
+
+Procedure TStrings.LoadFromFile(const FileName: string); 
+
+begin
+end;
+
+
+
+Procedure TStrings.LoadFromStream(Stream: TStream); 
+
+begin
+end;
+
+
+
+Procedure TStrings.Move(CurIndex, NewIndex: Integer); 
+
+begin
+end;
+
+
+
+Procedure TStrings.SaveToFile(const FileName: string); 
+
+begin
+end;
+
+
+
+Procedure TStrings.SaveToStream(Stream: TStream); 
+
+begin
+end;
+
+
+
+Procedure TStrings.SetText(TheText: PChar); 
+
+begin
+end;
+
+
+{****************************************************************************}
+{*                             TStringList                                  *}
+{****************************************************************************}
+
+
+
+Procedure TStringList.ExchangeItems(Index1, Index2: Integer);
+
+begin
+end;
+
+
+
+Procedure TStringList.Grow;
+
+begin
+end;
+
+
+
+Procedure TStringList.QuickSort(L, R: Integer);
+
+begin
+end;
+
+
+
+Procedure TStringList.InsertItem(Index: Integer; const S: string);
+
+begin
+end;
+
+
+
+Procedure TStringList.SetSorted(Value: Boolean);
+
+begin
+end;
+
+
+
+Procedure TStringList.Changed; 
+
+begin
+end;
+
+
+
+Procedure TStringList.Changing; 
+
+begin
+end;
+
+
+
+Function TStringList.Get(Index: Integer): string; 
+
+begin
+end;
+
+
+
+Function TStringList.GetCapacity: Integer; 
+
+begin
+end;
+
+
+
+Function TStringList.GetCount: Integer; 
+
+begin
+end;
+
+
+
+Function TStringList.GetObject(Index: Integer): TObject; 
+
+begin
+end;
+
+
+
+Procedure TStringList.Put(Index: Integer; const S: string); 
+
+begin
+end;
+
+
+
+Procedure TStringList.PutObject(Index: Integer; AObject: TObject); 
+
+begin
+end;
+
+
+
+Procedure TStringList.SetCapacity(NewCapacity: Integer); 
+
+begin
+end;
+
+
+
+Procedure TStringList.SetUpdateState(Updating: Boolean); 
+
+begin
+end;
+
+
+
+destructor TStringList.Destroy; 
+
+begin
+end;
+
+
+
+Function TStringList.Add(const S: string): Integer; 
+
+begin
+end;
+
+
+
+Procedure TStringList.Clear; 
+
+begin
+end;
+
+
+
+Procedure TStringList.Delete(Index: Integer); 
+
+begin
+end;
+
+
+
+Procedure TStringList.Exchange(Index1, Index2: Integer); 
+
+begin
+end;
+
+
+
+Function TStringList.Find(const S: string; var Index: Integer): Boolean; 
+
+begin
+end;
+
+
+
+Function TStringList.IndexOf(const S: string): Integer; 
+
+begin
+end;
+
+
+
+Procedure TStringList.Insert(Index: Integer; const S: string); 
+
+begin
+end;
+
+
+
+Procedure TStringList.Sort; 
+
+begin
+end;
+{
+  $Log$
+  Revision 1.1  1998-05-04 14:30:12  michael
+  * Split file according to Class; implemented dummys for all methods, so unit compiles.
+
+}

+ 96 - 0
fcl/inc/thread.inc

@@ -0,0 +1,96 @@
+{
+    $Id$
+    This file is part of the Free Component Library (FCL)
+    Copyright (c) 1998 by the Free Pascal development team
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+{****************************************************************************}
+{*                             TThread                                      *}
+{****************************************************************************}
+
+
+procedure TThread.CallOnTerminate;
+
+begin
+end;
+
+
+function TThread.GetPriority: TThreadPriority;
+
+begin
+end;
+
+
+procedure TThread.SetPriority(Value: TThreadPriority);
+
+begin
+end;
+
+
+procedure TThread.SetSuspended(Value: Boolean);
+
+begin
+end;
+
+
+procedure TThread.DoTerminate; 
+
+begin
+end;
+
+
+procedure TThread.Synchronize(Method: TThreadMethod);
+
+begin
+end;
+
+
+constructor TThread.Create(CreateSuspended: Boolean);
+
+begin
+end;
+
+
+destructor TThread.Destroy;
+
+begin
+end;
+
+
+procedure TThread.Resume;
+
+begin
+end;
+
+
+procedure TThread.Suspend;
+
+begin
+end;
+
+
+procedure TThread.Terminate;
+
+begin
+end;
+
+
+function TThread.WaitFor: Integer;
+
+begin
+end;
+
+
+{
+  $Log$
+  Revision 1.1  1998-05-04 14:30:12  michael
+  * Split file according to Class; implemented dummys for all methods, so unit compiles.
+
+}

+ 205 - 0
fcl/inc/writer.inc

@@ -0,0 +1,205 @@
+{
+    $Id$
+    This file is part of the Free Component Library (FCL)
+    Copyright (c) 1998 by the Free Pascal development team
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+{****************************************************************************}
+{*                             TWriter                                      *}
+{****************************************************************************}
+
+Procedure TWriter.AddAncestor(Component: TComponent);
+
+begin
+end;
+
+
+function  TWriter.GetPosition: Longint;
+
+begin
+end;
+
+
+Procedure TWriter.SetPosition(Value: Longint);
+
+begin
+end;
+
+
+Procedure TWriter.WriteBuffer;
+
+begin
+end;
+
+
+Procedure TWriter.WriteData(Instance: TComponent); 
+
+begin
+end;
+
+
+Procedure TWriter.WriteProperty(Instance: TPersistent; PropInfo: Pointer);
+
+begin
+end;
+
+
+Procedure TWriter.WriteProperties(Instance: TPersistent);
+
+begin
+end;
+
+
+Procedure TWriter.WritePropName(const PropName: string);
+
+begin
+end;
+
+
+Procedure TWriter.WriteBinary(wd : TStreamProc);
+
+begin
+end;
+
+
+Procedure TWriter.WritePrefix(Flags: TFilerFlags; AChildPos: Integer);
+
+begin
+end;
+
+
+Procedure TWriter.WriteValue(Value: TValueType);
+
+begin
+end;
+
+
+Destructor TWriter.Destroy; 
+
+begin
+end;
+
+
+Procedure TWriter.DefineProperty(const Name: string;
+  rd : TReaderProc; wd : TWriterProc;
+  HasData: Boolean); 
+
+begin
+end;
+
+
+Procedure TWriter.DefineBinaryProperty(const Name: string;
+  rd, wd: TStreamProc;
+  HasData: Boolean); 
+
+begin
+end;
+
+
+Procedure TWriter.FlushBuffer; 
+
+begin
+end;
+
+
+Procedure TWriter.Write(const Buf; Count: Longint);
+
+begin
+end;
+
+
+Procedure TWriter.WriteBoolean(Value: Boolean);
+
+begin
+end;
+
+
+Procedure TWriter.WriteCollection(Value: TCollection);
+
+begin
+end;
+
+
+Procedure TWriter.WriteComponent(Component: TComponent);
+
+begin
+end;
+
+
+Procedure TWriter.WriteChar(Value: Char);
+
+begin
+end;
+
+
+Procedure TWriter.WriteDescendent(Root: TComponent; AAncestor: TComponent);
+
+begin
+end;
+
+
+Procedure TWriter.WriteFloat(Value: Extended);
+
+begin
+end;
+
+
+Procedure TWriter.WriteIdent(const Ident: string);
+
+begin
+end;
+
+
+Procedure TWriter.WriteInteger(Value: Longint);
+
+begin
+end;
+
+
+Procedure TWriter.WriteListBegin;
+
+begin
+end;
+
+
+Procedure TWriter.WriteListEnd;
+
+begin
+end;
+
+
+Procedure TWriter.WriteRootComponent(Root: TComponent);
+
+begin
+end;
+
+
+Procedure TWriter.WriteSignature;
+
+begin
+end;
+
+
+Procedure TWriter.WriteStr(const Value: string);
+
+begin
+end;
+
+
+Procedure TWriter.WriteString(const Value: string);
+
+begin
+end;
+{
+  $Log$
+  Revision 1.1  1998-05-04 14:30:12  michael
+  * Split file according to Class; implemented dummys for all methods, so unit compiles.
+
+}