Subversion Repositories fastphp

Compare Revisions

Regard whitespace Rev 67 → Rev 66

/trunk/EditorMain.pas
167,7 → 167,6
procedure BtnLightClick(Sender: TObject);
procedure StartUpTimerTimer(Sender: TObject);
private
hMutex: THandle;
CurSearchTerm: string;
HlpPrevPageIndex: integer;
SrcRep: TSynEditFindReplace;
175,9 → 174,9
gOnlineHelpWord: string;
{$ENDIF}
procedure Help;
function MarkUpLineReference(cont: string): string;
function InputRequestCallback(var data: AnsiString): boolean;
function OutputNotifyCallback(const data: AnsiString): boolean;
procedure RightTrimAll;
protected
ChmIndex: TMemIniFile;
FScrapFile: string;
190,7 → 189,6
procedure Theme_Light;
procedure Theme_Dark;
function IsThemeDark: boolean;
function MarkUpLineReference(cont: string): string;
end;
 
var
288,19 → 286,8
SynEdit1.SetFocus;
end;
 
procedure TForm1.RightTrimAll;
var
i: integer;
begin
for i := 0 to SynEdit1.Lines.Count do
begin
SynEdit1.Lines.Strings[i] := TrimRight(SynEdit1.Lines.Strings[i]);
end;
end;
 
procedure TForm1.ActionSaveExecute(Sender: TObject);
begin
RightTrimAll;
SynEdit1.Lines.SaveToFile(GetScrapFile);
SynEdit1.Modified := false;
RefreshModifySign;
424,8 → 411,8
procedure TForm1.Run(Sender: TObject);
var
bakTS: TTabSheet;
//ss: TStringStream;
//bakPos: Int64;
ss: TStringStream;
bakPos: Int64;
begin
memo2.Lines.Text := '';
 
777,6 → 764,16
begin
BeforeNavigate(URL, Cancel);
end;
procedure TForm1.WebBrowser1WindowClosing(ASender: TObject;
IsChildWindow: WordBool; var Cancel: WordBool);
resourcestring
LNG_CLOSE_REQUEST = 'A script has requested the window to be closed. The window of a standalone script would now close.';
begin
ShowMessage(LNG_CLOSE_REQUEST);
TWebBrowser(ASender).Clear;
Cancel := true;
end;
 
(*
{$ELSE}
procedure TForm1.WebBrowser1BeforeNavigate2(ASender: TObject;
788,16 → 785,6
{$ENDIF}
*)
 
procedure TForm1.WebBrowser1WindowClosing(ASender: TObject;
IsChildWindow: WordBool; var Cancel: WordBool);
resourcestring
LNG_CLOSE_REQUEST = 'A script has requested the window to be closed. The window of a standalone script would now close.';
begin
ShowMessage(LNG_CLOSE_REQUEST);
TWebBrowser(ASender).Clear;
Cancel := true;
end;
 
procedure TForm1.BeforeNavigate(const URL: OleVariant; var Cancel: WordBool);
var
s, myURL: string;
940,8 → 927,6
end;
FreeAndNil(SrcRep);
 
if hMutex <> 0 then CloseHandle(hMutex);
 
if Assigned(codeExplorer) then
begin
codeExplorer.Terminate;
977,17 → 962,7
SynEdit1.Options := opts;
 
if FileExists(ScrapFile) then
begin
hMutex := CreateMutex(nil, True, PChar('FastPHP'+IntToStr(StrHash(ScrapFile))));
if GetLastError = ERROR_ALREADY_EXISTS then
begin
// TODO: It would be great if the window of that FastPHP instance would switched to foreground
ShowMessageFmt('File "%s" is alrady open!', [ScrapFile]);
Close;
end;
 
SynEdit1.Lines.LoadFromFile(ScrapFile);
end
SynEdit1.Lines.LoadFromFile(ScrapFile)
else
SynEdit1.Lines.Clear;
 
/trunk/Functions.pas
22,7 → 22,6
function GetTempDir: string;
function GetSpecialFolder(const aCSIDL: Integer): string;
function GetMyDocumentsFolder: string;
function StrHash(const st:string): cardinal;
 
implementation
 
327,14 → 326,4
Result := GetSpecialFolder(CSIDL_PERSONAL);
end;
 
function StrHash(const st:string): cardinal;
var
i:integer;
begin
// https://stackoverflow.com/a/41400477/488539
result := 0;
for i := 1 to length(st) do
result := result*$20844 xor byte(st[i]);
end;
 
end.
/trunk/FindReplace.pas
51,7 → 51,7
procedure OnFind(Sender: TObject); virtual;
procedure OnReplace(Sender: TObject); virtual;
 
procedure DoFind(dialog: TFindDialog; direction: TFindDirection); overload;
procedure DoFind(dialog: TFindDialog; direction: TFindDirection);
procedure DoReplace(dialog: TReplaceDialog; direction: TFindDirection);
 
function GetDirection(dialog: TFindDialog): TFindDirection;
139,7 → 139,6
 
if not found then
begin
// TODO: If single replace was chosen, behave like Notepad and select the last replaced word
if direction = sdForwards then
MessageDlg('End of document reached.', mtInformation, [mbOk], 0)
else
154,7 → 153,6
opt: TSynSearchOptions;
numReplacements: integer;
begin
try
if direction = sdDefault then direction := GetDirection(dialog);
 
opt := [];
167,15 → 165,6
if fEditor.SelAvail then Include(opt, ssoSelectedOnly);
Exclude(opt, ssoEntireScope); // TODO: ok?
 
if not (ssoReplaceAll in opt) then
begin
if fEditor.SelLength = 0 then
begin
DoFind(dialog, sdForwards);
exit;
end;
end;
 
fEditor.BeginUpdate; // TODO: geht nicht?
//fEditor.BeginUndoBlock;
try
185,18 → 174,10
fEditor.EndUpdate;
end;
 
if not (ssoReplaceAll in opt) then
begin
DoFind(dialog, sdForwards);
end
else
begin
ShowMessageFmt('%d replaced.', [numReplacements]);
end;
finally
 
if fAutofocus and fEditor.CanFocus then fEditor.SetFocus;
end;
end;
 
procedure TSynEditFindReplace.OnFind(Sender: TObject);
begin