mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-07 13:10:34 +02:00
parent
436d73c20f
commit
7e9e0e1965
@ -559,10 +559,21 @@ begin
|
||||
end;
|
||||
|
||||
|
||||
Function TDataSource.IsLinkedTo(ADataSet: TDataSet): Boolean;
|
||||
Function TDataSource.IsLinkedTo(ADataset: TDataSet): Boolean;
|
||||
|
||||
var
|
||||
DS: TDataSource;
|
||||
|
||||
begin
|
||||
Result:=False;
|
||||
Repeat
|
||||
DS:=aDataset.GetDataSource;
|
||||
Result:=(DS=Self);
|
||||
if Assigned(DS) then
|
||||
aDataSet := DS.DataSet
|
||||
else
|
||||
aDataSet := Nil;
|
||||
Until Result or (aDataset=Nil)
|
||||
end;
|
||||
|
||||
|
||||
@ -615,6 +626,8 @@ begin
|
||||
End;
|
||||
If ADataset<>Nil Then
|
||||
begin
|
||||
if IsLinkedTo(aDataset) then
|
||||
DatabaseError(SErrCircularDataSourceReferenceNotAllowed,Self);
|
||||
FDataSet:=ADataset;
|
||||
ADataset.RegisterDatasource(Self);
|
||||
ProcessEvent(deUpdateState,0);
|
||||
|
@ -1926,7 +1926,7 @@ type
|
||||
constructor Create(AOwner: TComponent); override;
|
||||
destructor Destroy; override;
|
||||
procedure Edit;
|
||||
function IsLinkedTo(ADataSet: TDataSet): Boolean;
|
||||
function IsLinkedTo(ADataset: TDataSet): Boolean;
|
||||
property State: TDataSetState read FState;
|
||||
published
|
||||
property AutoEdit: Boolean read FAutoEdit write FAutoEdit default True;
|
||||
|
Loading…
Reference in New Issue
Block a user