[lazarus] Questions about DB status

Michael.VanCanneyt at Wisa.be Michael.VanCanneyt at Wisa.be
Sat Sep 13 11:02:28 EDT 2003




On Sat, 13 Sep 2003, Andrew Johnson wrote:

> On Sat, 2003-09-13 at 09:13, Mattias Gaertner wrote:
> > On Sat, 13 Sep 2003 09:00:51 -0400
> > Andrew Johnson <acjgenius at earthlink.net> wrote:
> >
> > Can you give some advice for distributing the work. Then I will help.
> >
> >
> > Mattias
>
> sure. I would guess if we can get more people working there is no reason
> to limit the number of people working on it right? so why not create
> dbctrls (and maybe dbgrids) and add the initial controls which we can
> finish the implementations of later. Like for now we can do general
> declarations like
>
>   TFieldDataLink = class(TDataLink)
>    {temporarily empty till I commit}
>   end;
>
>
>   TDBEdit = class(TMaskEdit)
>   private
>     { out link }
>     FDataLink: TFieldDataLink;
>
>     { dummy functions for now}
>
>     function GetDataField: string;
>     function GetDataSource: TDataSource;
>     function GetField: TField;
>
>     Procedure SetDataField(value : string);
>     function SetDataSource(value : TDataSource);
>   protected
>   public
>     { will create/destroy datalink later }
>     constructor Create(AOwner: TComponent); override;
>     destructor Destroy; override;
>
>     { our generic db published stuff }
>     property Field: TField read GetField;
>   published
>     { our generic db published stuff }
>     property DataField: string read GetDataField write SetDataField;
>     property DataSource: TDataSource read GetDataSource write
> SetDataSource;
>
>     { all the parent stuff we want published.. probably more then just
> this }
>     property Anchors;
>     property Enabled;
>     property Font;
>     property PopupMenu;
>     property ShowHint;
>     property TabOrder;
>     property TabStop;
>     property Visible;
>     property OnChange;
>   end;
>
> we need -
>
> TDBEdit,
> TDBText,
> TDBCheckbox,
> TDBComboBox,
> TDBListBox,
> TDBRadioGroup,
> TDBMemo,
> TDBImage,
> TDBNavigator,
> and maybe a TDBCalender.. thats a good start.
>
> Once I get this datalink semi-done in a little bit here I can add it and
> we can have different people try and implement each control more fully.
> They still won't be fully testable in lcl, but I assume we might be able
> to test to some extent like Jesus does with his grid..

Good idea.

Please keep in mind 2 things:

1. Non-visual stuff can go in the FCL.
   TFieldDatalink (and some others as well maybe) belongs there, I think.

2. The FCL implementation of TDataset has no support for persistent fields
   yet. For this, the TField/TFields should be rewritten as a
   TCollectionItem/TNamedCollection pair, not TComponent/TList as it is now.

Michael.






More information about the Lazarus mailing list