Fix: Sorting after first install and small refactoring (#883)

This commit is contained in:
Andrey 2023-04-13 20:10:20 +03:00 committed by GitHub
commit 91decf00bf
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 16 additions and 61 deletions

View file

@ -5114,7 +5114,6 @@ begin
TabNode := TabNode.NextSibling;
end;
end;
// Create at least one tab.
if ANoteBook.PageCount = 0 then
begin
@ -5125,6 +5124,7 @@ begin
else
AFileViewFlags := [];
AFileView := TColumnsFileView.Create(Page, aFileSource, gpExePath, AFileViewFlags);
Commands.DoSortByFunctions(AFileView, ColSet.GetColumnSet('Default').GetColumnFunctions(0));
AssignEvents(AFileView);
end
else if Assigned(RootNode) then

View file

@ -3532,123 +3532,78 @@ begin
end;
procedure TMainCommands.cm_SortByName(const Params: array of string);
var
FileFunctions: TFileFunctions = nil;
begin
AddSortFunction(FileFunctions, fsfNameNoExtension);
DoSortByFunctions(frmMain.ActiveFrame, FileFunctions);
DoSortByFunctions(frmMain.ActiveFrame, [fsfNameNoExtension]);
end;
procedure TMainCommands.cm_SortByExt(const Params: array of string);
var
FileFunctions: TFileFunctions = nil;
begin
AddSortFunction(FileFunctions, fsfExtension);
DoSortByFunctions(frmMain.ActiveFrame, FileFunctions);
DoSortByFunctions(frmMain.ActiveFrame, [fsfExtension]);
end;
procedure TMainCommands.cm_SortBySize(const Params: array of string);
var
FileFunctions: TFileFunctions = nil;
begin
AddSortFunction(FileFunctions, fsfSize);
DoSortByFunctions(frmMain.ActiveFrame, FileFunctions);
DoSortByFunctions(frmMain.ActiveFrame, [fsfSize]);
end;
procedure TMainCommands.cm_SortByDate(const Params: array of string);
var
FileFunctions: TFileFunctions = nil;
begin
AddSortFunction(FileFunctions, fsfModificationTime);
DoSortByFunctions(frmMain.ActiveFrame, FileFunctions);
DoSortByFunctions(frmMain.ActiveFrame, [fsfModificationTime]);
end;
procedure TMainCommands.cm_SortByAttr(const Params: array of string);
var
FileFunctions: TFileFunctions = nil;
begin
AddSortFunction(FileFunctions, fsfAttr);
DoSortByFunctions(frmMain.ActiveFrame, FileFunctions);
DoSortByFunctions(frmMain.ActiveFrame, [fsfAttr]);
end;
procedure TMainCommands.cm_LeftSortByName(const Params: array of string);
var
FileFunctions: TFileFunctions = nil;
begin
AddSortFunction(FileFunctions, fsfNameNoExtension);
DoSortByFunctions(frmMain.FrameLeft, FileFunctions);
DoSortByFunctions(frmMain.FrameLeft, [fsfNameNoExtension]);
end;
procedure TMainCommands.cm_LeftSortByExt(const Params: array of string);
var
FileFunctions: TFileFunctions = nil;
begin
AddSortFunction(FileFunctions, fsfExtension);
DoSortByFunctions(frmMain.FrameLeft, FileFunctions);
DoSortByFunctions(frmMain.FrameLeft, [fsfExtension]);
end;
procedure TMainCommands.cm_LeftSortBySize(const Params: array of string);
var
FileFunctions: TFileFunctions = nil;
begin
AddSortFunction(FileFunctions, fsfSize);
DoSortByFunctions(frmMain.FrameLeft, FileFunctions);
DoSortByFunctions(frmMain.FrameLeft, [fsfSize]);
end;
procedure TMainCommands.cm_LeftSortByDate(const Params: array of string);
var
FileFunctions: TFileFunctions = nil;
begin
AddSortFunction(FileFunctions, fsfModificationTime);
DoSortByFunctions(frmMain.FrameLeft, FileFunctions);
DoSortByFunctions(frmMain.FrameLeft, [fsfModificationTime]);
end;
procedure TMainCommands.cm_LeftSortByAttr(const Params: array of string);
var
FileFunctions: TFileFunctions = nil;
begin
AddSortFunction(FileFunctions, fsfAttr);
DoSortByFunctions(frmMain.FrameLeft, FileFunctions);
DoSortByFunctions(frmMain.FrameLeft, [fsfAttr]);
end;
procedure TMainCommands.cm_RightSortByName(const Params: array of string);
var
FileFunctions: TFileFunctions = nil;
begin
AddSortFunction(FileFunctions, fsfNameNoExtension);
DoSortByFunctions(frmMain.FrameRight, FileFunctions);
DoSortByFunctions(frmMain.FrameRight, [fsfNameNoExtension]);
end;
procedure TMainCommands.cm_RightSortByExt(const Params: array of string);
var
FileFunctions: TFileFunctions = nil;
begin
AddSortFunction(FileFunctions, fsfExtension);
DoSortByFunctions(frmMain.FrameRight, FileFunctions);
DoSortByFunctions(frmMain.FrameRight, [fsfExtension]);
end;
procedure TMainCommands.cm_RightSortBySize(const Params: array of string);
var
FileFunctions: TFileFunctions = nil;
begin
AddSortFunction(FileFunctions, fsfSize);
DoSortByFunctions(frmMain.FrameRight, FileFunctions);
DoSortByFunctions(frmMain.FrameRight, [fsfSize]);
end;
procedure TMainCommands.cm_RightSortByDate(const Params: array of string);
var
FileFunctions: TFileFunctions = nil;
begin
AddSortFunction(FileFunctions, fsfModificationTime);
DoSortByFunctions(frmMain.FrameRight, FileFunctions);
DoSortByFunctions(frmMain.FrameRight, [fsfModificationTime]);
end;
procedure TMainCommands.cm_RightSortByAttr(const Params: array of string);
var
FileFunctions: TFileFunctions = nil;
begin
AddSortFunction(FileFunctions, fsfAttr);
DoSortByFunctions(frmMain.FrameRight, FileFunctions);
DoSortByFunctions(frmMain.FrameRight, [fsfAttr]);
end;
{ Command to request to sort a frame with a column with a defined order.