fixes mini explorer issues after work for #264

This commit is contained in:
Basile Burg 2018-03-17 05:02:21 +01:00
parent 5c00c05b4b
commit b093cb3a9c
2 changed files with 33 additions and 28 deletions

View File

@ -28,15 +28,15 @@ inherited CEMiniExplorerWidget: TCEMiniExplorerWidget
Align = alTop
Columns = <
item
Width = 333
Width = 520
end>
ReadOnly = True
ScrollBars = ssAutoBoth
ShowColumnHeaders = False
TabOrder = 0
ViewStyle = vsReport
OnClick = lstFavClick
OnDeletion = lstFavDeletion
OnEdited = lstFavEdited
OnEnter = lstFavEnter
end
object Splitter1: TSplitter[1]
@ -100,6 +100,7 @@ inherited CEMiniExplorerWidget: TCEMiniExplorerWidget
SortType = stText
TabOrder = 2
OnDblClick = lstFilesDblClick
OnFileAdded = lstFilesFileAdded
ObjectTypes = [otNonFolders, otHidden]
ShellTreeView = treeFolders
end
@ -185,7 +186,6 @@ inherited CEMiniExplorerWidget: TCEMiniExplorerWidget
TabOrder = 0
OnButtonClick = lstFilterButtonClick
OnKeyUp = lstFilterKeyUp
TextHint = '(filter)'
end
end
end

View File

@ -86,12 +86,12 @@ type
procedure btnShellOpenClick(Sender: TObject);
procedure btnAddFavClick(Sender: TObject);
procedure btnRemFavClick(Sender: TObject);
procedure lstFavClick(Sender: TObject);
procedure lstFavDeletion(Sender: TObject; Item: TListItem);
procedure lstFavEdited(Sender: TObject; Item: TListItem; var AValue: string);
procedure lstFavEnter(Sender: TObject);
procedure lstFilesDblClick(Sender: TObject);
procedure lstFilesEnter(Sender: TObject);
procedure lstFilesStartDrag(Sender: TObject; var DragObject: TDragObject);
procedure lstFilesFileAdded(Sender: TObject; Item: TListItem);
procedure lstFilterButtonClick(Sender: TObject);
procedure lstFilterKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
procedure TreeEnter(Sender: TObject);
@ -118,19 +118,19 @@ type
procedure shellOpenSelected;
procedure mnuDriveItemClick(sender: TObject);
procedure mnuDriveSelect(sender: TObject);
//
procedure projNew(project: ICECommonProject);
procedure projChanged(project: ICECommonProject);
procedure projClosing(project: ICECommonProject);
procedure projFocused(project: ICECommonProject);
procedure projCompiling(project: ICECommonProject);
procedure projCompiled(project: ICECommonProject; success: boolean);
//
procedure docNew(document: TCESynMemo);
procedure docFocused(document: TCESynMemo);
procedure docChanged(document: TCESynMemo);
procedure docClosing(document: TCESynMemo);
//
function singleServiceName: string;
procedure browse(const location: string);
function currentLocation: string;
@ -310,9 +310,9 @@ begin
end;
iss32:
begin
fImages.Width := 24;
fImages.Height := 24;
treeFolders.Indent := 24;
fImages.Width := 32;
fImages.Height := 32;
treeFolders.Indent := 32;
fImages.AddResourceName(HINSTANCE, 'DOCUMENT32');
fImages.AddResourceName(HINSTANCE, 'FOLDER32');
fImages.AddResourceName(HINSTANCE, 'FOLDER_STAR32');
@ -469,11 +469,6 @@ begin
d := PString(Item.Data)^;
if d.dirExists then
browse(d)
else if dlgYesNo('The favorite folder `' + d + '` does not exist. ' +
'Remove from the list ?') = mrYes then
begin
fFavorites.Delete(item.Index);
end;
end;
procedure TCEMiniExplorerWidget.btnRemFavClick(Sender: TObject);
@ -488,17 +483,27 @@ begin
lstFiles.Clear;
end;
procedure TCEMiniExplorerWidget.lstFavClick(Sender: TObject);
var
d: string;
begin
if lstFav.Selected.isNil or lstFav.Selected.Data.isNil then
exit;
d := PString(lstFav.Selected.Data)^;
if not d.dirExists and (dlgYesNo('The favorite folder `' + d +
'` does not exist. ' + 'Remove from the list ?') = mrYes) then
begin
fFavorites.Delete(lstFav.Selected.Index);
lstFiles.Clear;
end;
end;
procedure TCEMiniExplorerWidget.lstFavDeletion(Sender: TObject; Item: TListItem);
begin
if Item.isNotNil and item.Data.isNotNil then
dispose(PString(item.Data));
end;
procedure TCEMiniExplorerWidget.lstFavEdited(Sender: TObject; Item: TListItem;
var AValue: string);
begin
end;
procedure TCEMiniExplorerWidget.lstFavEnter(Sender: TObject);
begin
fLastListOrTree := lstFav;
@ -606,10 +611,10 @@ begin
fLastListOrTree := lstFiles;
end;
procedure TCEMiniExplorerWidget.lstFilesStartDrag(Sender: TObject;
var DragObject: TDragObject);
procedure TCEMiniExplorerWidget.lstFilesFileAdded(Sender: TObject;
Item: TListItem);
begin
Item.ImageIndex:=0;
end;
procedure TCEMiniExplorerWidget.lstFilterButtonClick(Sender: TObject);
@ -739,11 +744,11 @@ end;
procedure TCEMiniExplorerWidget.browse(const location: string);
begin
if location.EndsWith('\') or location.EndsWith('/') then
treeFolders.Root := location[1..location.length]
else if location.fileExists then
treeFolders.Root := location.extractFileDir
treeFolders.Root := location[1..location.length - 1]
else if location.dirExists then
treeFolders.Root := location;
treeFolders.Root := location
else if location.fileExists then
treeFolders.Root := location.extractFileDir;
fLastFold:=treeFolders.Root;
end;