mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-12 13:50:06 +02:00
* Better loading of files, fix options for atom
git-svn-id: trunk@64397 -
This commit is contained in:
parent
35748025c5
commit
3ffb492625
@ -42,7 +42,7 @@ object AtomPackageSettingsForm: TAtomPackageSettingsForm
|
|||||||
Left = 120
|
Left = 120
|
||||||
Height = 27
|
Height = 27
|
||||||
Top = 78
|
Top = 78
|
||||||
Width = 184
|
Width = 280
|
||||||
BorderSpacing.Top = 8
|
BorderSpacing.Top = 8
|
||||||
OnEditingDone = edtNameEditingDone
|
OnEditingDone = edtNameEditingDone
|
||||||
OnKeyPress = edtNameKeyPress
|
OnKeyPress = edtNameKeyPress
|
||||||
@ -271,7 +271,7 @@ object AtomPackageSettingsForm: TAtomPackageSettingsForm
|
|||||||
Left = 120
|
Left = 120
|
||||||
Height = 27
|
Height = 27
|
||||||
Top = 114
|
Top = 114
|
||||||
Width = 184
|
Width = 280
|
||||||
BorderSpacing.Top = 9
|
BorderSpacing.Top = 9
|
||||||
OnKeyPress = edtClassNameKeyPress
|
OnKeyPress = edtClassNameKeyPress
|
||||||
TabOrder = 9
|
TabOrder = 9
|
||||||
|
@ -22,8 +22,9 @@ type
|
|||||||
FKeyWords,
|
FKeyWords,
|
||||||
FCommands : TStrings;
|
FCommands : TStrings;
|
||||||
FActivationCommands : TStrings;
|
FActivationCommands : TStrings;
|
||||||
|
FFiles : TStrings;
|
||||||
procedure AddCSSFile(aProject: TLazProject);
|
procedure AddCSSFile(aProject: TLazProject);
|
||||||
procedure AddFileToProject(aProject: TLazProject; const aFileName: string);
|
procedure AddFileToProject(const aFileName: string);
|
||||||
procedure AddGlueFile(aProject: TLazProject);
|
procedure AddGlueFile(aProject: TLazProject);
|
||||||
procedure AddKeyMapFile(aProject: TLazProject);
|
procedure AddKeyMapFile(aProject: TLazProject);
|
||||||
procedure AddMenuFile(aProject: TLazProject);
|
procedure AddMenuFile(aProject: TLazProject);
|
||||||
@ -116,12 +117,14 @@ begin
|
|||||||
FKeyWords:=TStringList.Create;
|
FKeyWords:=TStringList.Create;
|
||||||
FCommands:=TStringList.Create;
|
FCommands:=TStringList.Create;
|
||||||
FActivationCommands:=TStringList.Create;
|
FActivationCommands:=TStringList.Create;
|
||||||
|
FFiles:=TStringList.Create;
|
||||||
InitVars;
|
InitVars;
|
||||||
Name:='pas2jsatompackage';
|
Name:='pas2jsatompackage';
|
||||||
end;
|
end;
|
||||||
|
|
||||||
destructor TAtomPackageProjectDescriptor.destroy;
|
destructor TAtomPackageProjectDescriptor.destroy;
|
||||||
begin
|
begin
|
||||||
|
FreeAndNil(FFiles);
|
||||||
FreeAndNil(FCommands);
|
FreeAndNil(FCommands);
|
||||||
FreeAndNil(FKeywords);
|
FreeAndNil(FKeywords);
|
||||||
FreeAndNil(FActivationCommands);
|
FreeAndNil(FActivationCommands);
|
||||||
@ -329,7 +332,7 @@ begin
|
|||||||
finally
|
finally
|
||||||
Src.Free;
|
Src.Free;
|
||||||
end;
|
end;
|
||||||
AddFileToProject(aProject,FN);
|
AddFileToProject(FN);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TAtomPackageProjectDescriptor.AddCSSFile(aProject : TLazProject);
|
Procedure TAtomPackageProjectDescriptor.AddCSSFile(aProject : TLazProject);
|
||||||
@ -349,7 +352,7 @@ begin
|
|||||||
finally
|
finally
|
||||||
Src.Free;
|
Src.Free;
|
||||||
end;
|
end;
|
||||||
AddFileToProject(aProject,FN);
|
AddFileToProject(FN);
|
||||||
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -370,7 +373,7 @@ begin
|
|||||||
finally
|
finally
|
||||||
Src.Free;
|
Src.Free;
|
||||||
end;
|
end;
|
||||||
AddFileToProject(aProject,FN);
|
AddFileToProject(FN);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TAtomPackageProjectDescriptor.AddMenuFile(aProject : TLazProject);
|
Procedure TAtomPackageProjectDescriptor.AddMenuFile(aProject : TLazProject);
|
||||||
@ -390,7 +393,7 @@ begin
|
|||||||
finally
|
finally
|
||||||
Src.Free;
|
Src.Free;
|
||||||
end;
|
end;
|
||||||
AddFileToProject(aProject,FN);
|
AddFileToProject(FN);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TAtomPackageProjectDescriptor.AddPackageJSONFile(aProject : TLazProject);
|
Procedure TAtomPackageProjectDescriptor.AddPackageJSONFile(aProject : TLazProject);
|
||||||
@ -398,7 +401,7 @@ Procedure TAtomPackageProjectDescriptor.AddPackageJSONFile(aProject : TLazProjec
|
|||||||
Var
|
Var
|
||||||
aJSON,B : TJSONObject;
|
aJSON,B : TJSONObject;
|
||||||
keys : TJSONArray;
|
keys : TJSONArray;
|
||||||
S,N,V : String;
|
S,N,V,FN : String;
|
||||||
JS : TJSONStringType;
|
JS : TJSONStringType;
|
||||||
I : Integer;
|
I : Integer;
|
||||||
aStream : TStringStream;
|
aStream : TStringStream;
|
||||||
@ -429,7 +432,9 @@ begin
|
|||||||
aJSON.Add('dependencies',b);
|
aJSON.Add('dependencies',b);
|
||||||
JS:=aJSON.FormatJSON;
|
JS:=aJSON.FormatJSON;
|
||||||
aStream:=TStringStream.Create(JS);
|
aStream:=TStringStream.Create(JS);
|
||||||
aStream.SaveToFile(FPackageDir+'package.json');
|
FN:=FPackageDir+'package.json';
|
||||||
|
aStream.SaveToFile(FN);
|
||||||
|
addFileToProject(FN);
|
||||||
finally
|
finally
|
||||||
aJSON.Free;
|
aJSON.Free;
|
||||||
end;
|
end;
|
||||||
@ -478,26 +483,31 @@ begin
|
|||||||
CompOpts:=AProject.LazCompilerOptions;
|
CompOpts:=AProject.LazCompilerOptions;
|
||||||
SetDefaultNodeJSCompileOptions(CompOpts);
|
SetDefaultNodeJSCompileOptions(CompOpts);
|
||||||
CompOpts.TargetFilename:='lib/'+StripNonIdentifierChars(FPackageName)+'.js';
|
CompOpts.TargetFilename:='lib/'+StripNonIdentifierChars(FPackageName)+'.js';
|
||||||
CompOpts.CustomOptions:='-Jiatomimports.js -Jirtl.js -Jc '+CompOpts.CustomOptions+' -Jiatomexports.js';
|
CompOpts.CustomOptions:='-Jiatomimports.js -Jirtl.js -Jc '+CompOpts.CustomOptions+' -Jaatomexports.js';
|
||||||
SetDefaultNodeRunParams(AProject.RunParameters.GetOrCreate('Default'));
|
SetDefaultNodeRunParams(AProject.RunParameters.GetOrCreate('Default'));
|
||||||
AddProjectFile(aProject);
|
AddProjectFile(aProject);
|
||||||
Result:=mrOK;
|
Result:=mrOK;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TAtomPackageProjectDescriptor.AddFileToProject(aProject : TLazProject; Const aFileName : string);
|
Procedure TAtomPackageProjectDescriptor.AddFileToProject(Const aFileName : string);
|
||||||
|
|
||||||
begin
|
begin
|
||||||
LazarusIDE.DoOpenEditorFile(aFileName, -1, -1, [ofProjectLoading,ofQuiet,ofAddToProject]);
|
FFiles.Add(aFileName);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Function TAtomPackageProjectDescriptor.CreateStartFiles(AProject: TLazProject) : TModalresult;
|
Function TAtomPackageProjectDescriptor.CreateStartFiles(AProject: TLazProject) : TModalresult;
|
||||||
|
|
||||||
|
Var
|
||||||
|
aFileName : String;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
AddGlueFile(aProject);
|
AddGlueFile(aProject);
|
||||||
AddCSSFile(aProject);
|
AddCSSFile(aProject);
|
||||||
AddKeyMapFile(aProject);
|
AddKeyMapFile(aProject);
|
||||||
AddMenuFile(aProject);
|
AddMenuFile(aProject);
|
||||||
AddPackageJSONFile(aProject);
|
AddPackageJSONFile(aProject);
|
||||||
|
For aFileName in FFiles do
|
||||||
|
LazarusIDE.DoOpenEditorFile(aFileName, -1, -1, [ofProjectLoading,ofQuiet,ofAddToProject]);
|
||||||
Result:=mrOK;
|
Result:=mrOK;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user