[fpc-pascal] how to make a type private to the unit but not defining it in the implementation section?

Dennis dec12 at avidsoft.com.hk
Thu Mar 7 09:10:44 CET 2019


unit frproxyserver;

{$mode objfpc}{$H+}

interface

uses
   Classes, SysUtils, Forms, Controls, Graphics, Dialogs, ExtCtrls, Grids,
   frBase;

type

   TMyStringGrid=class(TStringGrid) //how to I make this class visible 
only to this unit?
   public
   end;

   { TProxyServerFrame }

   TProxyServerFrame = class(TBaseFrame)
     Panel_Top: TPanel;
     StringGrid1: TMyStringGrid;
   private

   public

   end;

implementation

{$R *.lfm}

end.

=============
My reason is I don't want to pollute the name space but if I put the 
declaration of TMyStringGrid in the implementation section, it cannot be 
used by the field in the class declaration of TProxyServerFrame.

if there a compiler directive that I can put around
TMyStringGrid to make it only visible to the unit frproxyserver?

Dennis



More information about the fpc-pascal mailing list