summaryrefslogtreecommitdiff
path: root/UMain.pas
diff options
context:
space:
mode:
Diffstat (limited to 'UMain.pas')
-rw-r--r--UMain.pas40
1 files changed, 19 insertions, 21 deletions
diff --git a/UMain.pas b/UMain.pas
index 6bba15b..0950b83 100644
--- a/UMain.pas
+++ b/UMain.pas
@@ -259,7 +259,7 @@ var
implementation
uses ULibc,
- UCore, USelect, UNewDir, UDirDelete, UProgress, UCopyMove,
+ UCore, UCoreWorkers, USelect, UNewDir, UDirDelete, UProgress, UCopyMove,
UCoreUtils, ULocale, UChecksum, UChecksumDruid, USplitFile,
UFileTypeSettings, UFileAssoc, UChmod, UChown, USymlink,
UPreferences, UViewer, UToolTips, UMounterPrefs, UColumns,
@@ -1930,7 +1930,7 @@ begin
SetTabLabel(ANotebook, ANotebook.PageIndex, StrToUTF8(s), StrToUTF8(Engine.Path));
end;
end; // of Chdir, Listing, ...
- Engine.ExplicitChDir('/');
+ libc_chdir('/');
Application.ProcessMessages;
InternalUnLock;
FileListTipsEnable;
@@ -3267,7 +3267,6 @@ begin
try
FChecksumDruid := TFChecksumDruid.Create(Self);
- Engine.ExplicitChDir(Engine.Path);
FChecksumDruid.Engine := Engine;
if Engine.Path = '/' then FChecksumDruid.DirName := 'root'
else FChecksumDruid.DirName := ExtractFileName(ExcludeTrailingPathDelimiter(Engine.Path));
@@ -3284,7 +3283,6 @@ begin
else ChangingDir(AListView = LeftListView, Engine.Path, FChecksumDruid.FileNameEntry.Text, PDataItem(AListView.Selected.Data)^.FName);
DoRefresh(AListView <> LeftListView, True, True);
FChecksumDruid.Free;
- Engine.ExplicitChDir('/');
end;
finally
Application.ProcessMessages;
@@ -3604,12 +3602,12 @@ end;
procedure TFMain.EditViewFileInternal(ParentWindow: TGTKControl; Filename: string; Engine: TPanelEngine; View, NewFile: boolean);
var s: string;
- Stat: PDataItemSL;
+ Stat: PDataItem;
Error, x: integer;
// AViewer: TViewerThread;
AViewer: TFViewer;
begin
- Stat := Engine.GetFileInfoSL(Filename);
+ Stat := Engine.GetFileInfo(Filename, True, True);
if Assigned(Stat) and (Stat^.Size > ConfEditViewFileSizeLimit) and
(Application.MessageBox(LANGTheFileYouAreTryingToOpenIsQuiteBig, [mbYes, mbNo], mbWarning, mbNone, mbNo) = mbNo)
then begin
@@ -3680,7 +3678,7 @@ procedure TFMain.RunFile(Path: string; Engine: TPanelEngine; CustomAction: integ
var Command, FileTypeDesc: string;
i, ac: integer;
b, AutodetectGUI, RunInTerminal: boolean;
- Stat: PDataItemSL;
+ Stat: PDataItem;
s: string;
Assoc: TFileAssoc;
begin
@@ -3712,7 +3710,7 @@ begin
DebugMsg(['Some strange error occured...']);
Exit;
end;
- Stat := Engine.GetFileInfoSL(Path);
+ Stat := Engine.GetFileInfo(Path, True, True);
if Assigned(Stat) and Stat^.IsExecutable then begin
b := True;
if Engine is TVFSEngine then b := HandleRunFromArchive(Path, Engine, Command, FileTypeDesc, False); // not a local engine, extract to local first
@@ -4043,7 +4041,7 @@ var LeftPanel: boolean;
i: longint;
SelCount: longint;
AFile, NextItem1, NextItem2: string;
- Stat: PDataItemSL;
+ Stat: PDataItem;
UsrManager: TUserManager;
AWorkingThread: TWorkerThread;
AFProgress: TFProgress;
@@ -4086,7 +4084,7 @@ begin
if AFile <> '' then
try
FChmod := TFChmod.Create(Self);
- Stat := Engine.GetFileInfoSL(IncludeTrailingPathDelimiter(Engine.Path) + AFile);
+ Stat := Engine.GetFileInfo(IncludeTrailingPathDelimiter(Engine.Path) + AFile, True, True);
if not Assigned(Stat) then Exit;
UsrManager := TUserManager.Create;
try
@@ -4142,7 +4140,7 @@ var LeftPanel: boolean;
i: integer;
SelCount: longint;
AFile, NextItem1, NextItem2: string;
- Stat: PDataItemSL;
+ Stat: PDataItem;
AWorkingThread: TWorkerThread;
AFProgress: TFProgress;
begin
@@ -4184,7 +4182,7 @@ begin
if AFile <> '' then
try
FChown := TFChown.Create(Self);
- Stat := Engine.GetFileInfoSL(IncludeTrailingPathDelimiter(Engine.Path) + AFile);
+ Stat := Engine.GetFileInfo(IncludeTrailingPathDelimiter(Engine.Path) + AFile, True, True);
if not Assigned(Stat) then Exit;
FChown.AssignMode(Stat^.Mode, AFile, Stat^.UID, Stat^.GID);
if FChown.Run = mbOK then begin
@@ -4315,7 +4313,7 @@ procedure TFMain.FilePopupMenuPopup(Sender: TObject);
end;
var Item: TGTKMenuItem;
- DataItem: PDataItemSL;
+ DataItem: PDataItem;
Engine: TPanelEngine;
AListView: TGTKListView;
FileName, ShortFName: string;
@@ -4335,7 +4333,7 @@ begin
if Assigned(AListView.Selected) and Assigned(AListView.Selected.Data) and (not PDataItem(AListView.Selected.Data)^.UpDir)
then FileName := FileName + PDataItem(AListView.Selected.Data)^.FName;
ShortFName := ExtractFileName(ExcludeTrailingPathDelimiter(FileName));
- DataItem := Engine.GetFileInfoSL(FileName);
+ DataItem := Engine.GetFileInfo(FileName, True, True);
if not Assigned(DataItem) then begin
DebugMsg(['Error: File data not assigned. Bug ???! FileName = ', FileName]);
Exit;
@@ -4479,7 +4477,7 @@ end;
procedure TFMain.FilePopupMenuItemClick(Sender: TObject);
var Engine: TPanelEngine;
- DataItem: PDataItemSL;
+ DataItem: PDataItem;
AListView: TGTKListView;
FileName, ShortFName, s: string;
Error: integer;
@@ -4503,7 +4501,7 @@ begin
if Assigned(AListView.Selected) and Assigned(AListView.Selected.Data) and (not PDataItem(AListView.Selected.Data)^.UpDir)
then FileName := FileName + PDataItem(AListView.Selected.Data)^.FName;
ShortFName := ExtractFileName(ExcludeTrailingPathDelimiter(FileName));
- DataItem := Engine.GetFileInfoSL(FileName);
+ DataItem := Engine.GetFileInfo(FileName, True, True);
if not Assigned(DataItem) then begin
DebugMsg(['Error: File data not assigned. Bug ???! FileName = ', FileName]);
Exit;
@@ -6328,7 +6326,7 @@ var LeftPanel: boolean;
i: integer;
SelCount: longint;
AFile, NextItem1, NextItem2: string;
- Stat: PDataItemSL;
+ Stat: PDataItem;
{ AWorkingThread: TWorkerThread;
AFProgress: TFProgress; }
begin
@@ -6370,7 +6368,7 @@ begin
if AFile <> '' then
try
FProperties := TFProperties.Create(Self);
- Stat := Engine.GetFileInfoSL(IncludeTrailingPathDelimiter(Engine.Path) + AFile);
+ Stat := Engine.GetFileInfo(IncludeTrailingPathDelimiter(Engine.Path) + AFile, True, True);
if not Assigned(Stat) then Exit;
// FProperties.AssignMode(Stat^.Mode, AFile, Stat^.UID, Stat^.GID);
FProperties.DisplayFileName := AFile;
@@ -6488,14 +6486,14 @@ end;
(********************************************************************************************************************************)
function TFMain.HandleRunFromArchive(var APath: string; Engine: TPanelEngine; Command, FileTypeDesc: string; BypassDialog: boolean): boolean;
var Res: TMessageButton;
- Stat: PDataItemSl;
+ Stat: PDataItem;
s: string;
AListView: TGTKListView;
begin
Result := False;
try
if not BypassDialog then begin
- Stat := Engine.GetFileInfoSL(APath);
+ Stat := Engine.GetFileInfo(APath, True, True);
FRunFromVFS := TFRunFromVFS.Create(Self);
FRunFromVFS.FileNameLabel2.Caption := Format('%s<span weight="ultrabold"> </span>', [StrToUTF8(APath)]);
if FileTypeDesc = '' then FileTypeDesc := LANGHandleRunFromArchive_FileTypeDesc_Unknown;
@@ -6510,7 +6508,7 @@ begin
FRunFromVFS.PackedSizeLabel2.Visible := False;
FRunFromVFS.PackedSizeLabel.Visible := False;
end;
- FRunFromVFS.DateLabel2.Caption := Format('%s<span weight="ultrabold"> </span>', [FormatDate(Stat^.ModifyTime, True, True)]);
+ FRunFromVFS.DateLabel2.Caption := Format('%s<span weight="ultrabold"> </span>', [FormatDate(Stat^.mtime, True, True)]);
if (Command = '') and (not Stat^.IsExecutable) then begin
FRunFromVFS.OpensWithLabel2.Caption := Format('%s<span weight="ultrabold"> </span>', [LANGHandleRunFromArchive_NotAssociated]);
FRunFromVFS.ExecuteButton.Enabled := False;