diff --git a/modules/juce_gui_basics/filebrowser/juce_FileListComponent.cpp b/modules/juce_gui_basics/filebrowser/juce_FileListComponent.cpp index 8e83749c10..088157d6cd 100644 --- a/modules/juce_gui_basics/filebrowser/juce_FileListComponent.cpp +++ b/modules/juce_gui_basics/filebrowser/juce_FileListComponent.cpp @@ -31,12 +31,11 @@ Image juce_createIconForFile (const File& file); //============================================================================== FileListComponent::FileListComponent (DirectoryContentsList& listToShow) - : ListBox ({}, nullptr), + : ListBox ({}, this), DirectoryContentsDisplayComponent (listToShow), lastDirectory (listToShow.getDirectory()) { setTitle ("Files"); - setModel (this); directoryContentsList.addChangeListener (this); } @@ -67,14 +66,17 @@ void FileListComponent::scrollToTop() void FileListComponent::setSelectedFile (const File& f) { - for (int i = directoryContentsList.getNumFiles(); --i >= 0;) + if (! directoryContentsList.isStillLoading()) { - if (directoryContentsList.getFile (i) == f) + for (int i = directoryContentsList.getNumFiles(); --i >= 0;) { - fileWaitingToBeSelected = File(); + if (directoryContentsList.getFile (i) == f) + { + fileWaitingToBeSelected = File(); - selectRow (i); - return; + selectRow (i); + return; + } } } diff --git a/modules/juce_gui_basics/filebrowser/juce_FileListComponent.h b/modules/juce_gui_basics/filebrowser/juce_FileListComponent.h index b5bfe529a1..3d99e92c93 100644 --- a/modules/juce_gui_basics/filebrowser/juce_FileListComponent.h +++ b/modules/juce_gui_basics/filebrowser/juce_FileListComponent.h @@ -40,9 +40,9 @@ namespace juce @tags{GUI} */ -class JUCE_API FileListComponent : public ListBox, +class JUCE_API FileListComponent : private ListBoxModel, + public ListBox, public DirectoryContentsDisplayComponent, - private ListBoxModel, private ChangeListener { public: