mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-14 05:41:16 +02:00
implemented allowing parent as AnchorSide.Control
git-svn-id: trunk@6701 -
This commit is contained in:
parent
817395b4a9
commit
2753b3ab94
@ -492,6 +492,7 @@ begin
|
||||
if TObject(SelectedControls[i]) is TControl then begin
|
||||
CurControl:=TControl(SelectedControls[i]);
|
||||
if CurControl.Parent<>nil then begin
|
||||
sl.Add(ControlToStr(CurControl.Parent));
|
||||
for j:=0 to CurControl.Parent.ControlCount-1 do begin
|
||||
Sibling:=CurControl.Parent.Controls[j];
|
||||
if Sibling<>CurControl then
|
||||
@ -510,7 +511,7 @@ end;
|
||||
|
||||
function TAnchorDesigner.AnchorDesignerNoSiblingText: string;
|
||||
begin
|
||||
Result:='(parent borders)';
|
||||
Result:='(nil)';
|
||||
end;
|
||||
|
||||
procedure TAnchorDesigner.Refresh(Force: boolean);
|
||||
|
@ -7,7 +7,7 @@ interface
|
||||
uses
|
||||
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls,
|
||||
Buttons, LazarusIDEStrConsts, FileUtil, IDEProcs, EnvironmentOpts,
|
||||
CompilerOptions, ExtToolEditDlg, TransferMacros;
|
||||
CompilerOptions, ExtToolEditDlg, TransferMacros, LazConf;
|
||||
|
||||
type
|
||||
TCompilerOptionsTest = (
|
||||
@ -92,11 +92,13 @@ var
|
||||
CompilerFilename: String;
|
||||
CompileTool: TExternalToolOptions;
|
||||
CmdLineParams: String;
|
||||
CompilerFiles: TStrings;
|
||||
begin
|
||||
Result:=mrCancel;
|
||||
if Test<>cotNone then exit;
|
||||
CompileTool:=nil;
|
||||
TestMemo.Lines.Clear;
|
||||
CompilerFiles:=nil;
|
||||
try
|
||||
// check compiler filename
|
||||
FTest:=cotCheckCompilerExe;
|
||||
@ -113,6 +115,20 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
// check if there are several compilers in path
|
||||
CompilerFiles:=SearchAllFilesInPath(GetDefaultCompilerFilename,'',
|
||||
SysUtils.GetEnvironmentVariable('PATH'),':',[sffDontSearchInBasePath]);
|
||||
if (CompilerFiles<>nil) and (CompilerFiles.Count>1) then begin
|
||||
Result:=MessageDlg('Ambigious Compiler',
|
||||
'There are several FreePascal Compilers in your path.'#13#13
|
||||
+CompilerFiles.Text+#13
|
||||
+'Maybe you forgot to delete an old compiler?',
|
||||
mtWarning,[mbCancel,mbIgnore],0);
|
||||
if Result<>mrIgnore then exit;
|
||||
end;
|
||||
|
||||
|
||||
|
||||
// compile bogus file
|
||||
FTest:=cotCompileBogusFiles;
|
||||
TestGroupbox.Caption:='Test: Compiling an empty file ...';
|
||||
@ -156,6 +172,7 @@ begin
|
||||
end;
|
||||
|
||||
finally
|
||||
CompilerFiles.Free;
|
||||
CompileTool.Free;
|
||||
FTest:=cotNone;
|
||||
TestGroupbox.Caption:='Test';
|
||||
|
@ -79,6 +79,8 @@ type
|
||||
|
||||
function SearchFileInPath(const Filename, BasePath, SearchPath,
|
||||
Delimiter: string; Flags: TSearchFileInPathFlags): string;
|
||||
function SearchAllFilesInPath(const Filename, BasePath, SearchPath,
|
||||
Delimiter: string; Flags: TSearchFileInPathFlags): TStrings;
|
||||
function GetAllFilesMask: string;
|
||||
|
||||
// file actions
|
||||
@ -118,6 +120,9 @@ end.
|
||||
|
||||
{
|
||||
$Log$
|
||||
Revision 1.6 2005/01/27 00:55:04 mattias
|
||||
implemented allowing parent as AnchorSide.Control
|
||||
|
||||
Revision 1.5 2005/01/12 23:58:31 mattias
|
||||
improved project: recognizing if filename was fixed before pathdelim changed
|
||||
|
||||
|
@ -1071,6 +1071,56 @@ begin
|
||||
Result:='';
|
||||
end;
|
||||
|
||||
function SearchAllFilesInPath(const Filename, BasePath, SearchPath,
|
||||
Delimiter: string; Flags: TSearchFileInPathFlags): TStrings;
|
||||
|
||||
procedure Add(NewFilename: string);
|
||||
var
|
||||
i: Integer;
|
||||
begin
|
||||
NewFilename:=TrimFilename(NewFilename);
|
||||
if not FileExists(NewFilename) then exit;
|
||||
if Result=nil then begin
|
||||
Result:=TStringList.Create;
|
||||
end else begin
|
||||
for i:=0 to Result.Count-1 do
|
||||
if CompareFilenames(Result[i],NewFilename)=0 then exit;
|
||||
end;
|
||||
Result.Add(NewFilename);
|
||||
end;
|
||||
|
||||
var
|
||||
p, StartPos, l: integer;
|
||||
CurPath, Base: string;
|
||||
begin
|
||||
Result:=nil;
|
||||
if (Filename='') then exit;
|
||||
// check if filename absolute
|
||||
if FilenameIsAbsolute(Filename) then begin
|
||||
Add(CleanAndExpandFilename(Filename));
|
||||
exit;
|
||||
end;
|
||||
Base:=CleanAndExpandDirectory(BasePath);
|
||||
// search in current directory
|
||||
if (not (sffDontSearchInBasePath in Flags)) then begin
|
||||
Add(CleanAndExpandFilename(Base+Filename));
|
||||
end;
|
||||
// search in search path
|
||||
StartPos:=1;
|
||||
l:=length(SearchPath);
|
||||
while StartPos<=l do begin
|
||||
p:=StartPos;
|
||||
while (p<=l) and (pos(SearchPath[p],Delimiter)<1) do inc(p);
|
||||
CurPath:=TrimFilename(copy(SearchPath,StartPos,p-StartPos));
|
||||
if CurPath<>'' then begin
|
||||
if not FilenameIsAbsolute(CurPath) then
|
||||
CurPath:=Base+CurPath;
|
||||
Add(CleanAndExpandFilename(AppendPathDelim(CurPath)+Filename));
|
||||
end;
|
||||
StartPos:=p+1;
|
||||
end;
|
||||
end;
|
||||
|
||||
function GetAllFilesMask: string;
|
||||
begin
|
||||
{$IFDEF win32}
|
||||
@ -1105,6 +1155,9 @@ end;
|
||||
|
||||
{
|
||||
$Log$
|
||||
Revision 1.10 2005/01/27 00:55:04 mattias
|
||||
implemented allowing parent as AnchorSide.Control
|
||||
|
||||
Revision 1.9 2005/01/12 23:58:31 mattias
|
||||
improved project: recognizing if filename was fixed before pathdelim changed
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user