From a5058239350d78b066b5a404c823c1a8a2c9be5b Mon Sep 17 00:00:00 2001 From: juha Date: Mon, 29 Apr 2013 08:10:08 +0000 Subject: [PATCH] =?UTF-8?q?SqlDb:=20In=20registersqldb,=20auto=20declare?= =?UTF-8?q?=20unit=20in=20uses=20section.=20Issue=20#23045,=20patch=20from?= =?UTF-8?q?=20Silvio=20Cl=C3=A9cio?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: trunk@40927 - --- components/sqldb/registersqldb.pas | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/components/sqldb/registersqldb.pas b/components/sqldb/registersqldb.pas index cac07c2aeb..debddb94ce 100644 --- a/components/sqldb/registersqldb.pas +++ b/components/sqldb/registersqldb.pas @@ -102,7 +102,9 @@ uses lazideintf, srceditorintf, ProjectIntf, - idemsgintf; + idemsgintf, + CodeCache, + CodeToolManager; Type { TSQLStringsPropertyEditor } @@ -140,6 +142,7 @@ Type public function GetAttributes: TPropertyAttributes; override; procedure GetValues(Proc: TGetStrProc); override; + procedure SetValue(const NewValue: ansistring); override; end; {$IFDEF HASLIBLOADER} @@ -256,6 +259,30 @@ begin end; end; +procedure TSQLDBConnectorTypePropertyEditor.SetValue(const NewValue: ansistring); +var + Comp: TPersistent; + Code: TCodeBuffer; + ConnDef: TConnectionDef; + SrcEdit: TSourceEditorInterface; +begin + if not LazarusIDE.BeginCodeTools then + Exit; + SrcEdit := SourceEditorManagerIntf.ActiveEditor; + if Assigned(SrcEdit) then + Code := TCodeBuffer(SrcEdit.CodeToolsBuffer); + if Code = nil then + Exit; + Comp := GetComponent(0); + if Comp is TSQLConnector then + begin + ConnDef := GetConnectionDef(NewValue); + if Assigned(ConnDef) then + CodeToolBoss.AddUnitToMainUsesSection(Code, ConnDef.UnitName, ''); + end; + inherited; +end; + {$IFDEF HASLIBLOADER} { TSQLDBLibraryLoaderLibraryNamePropertyEditor }