JUCE-7.0.12-0-g4f43011b96
JUCE-7.0.12-0-g4f43011b96
JUCE — C++ application framework with suport for VST, VST3, LV2 audio plug-ins
« « « Anklang Documentation
Loading...
Searching...
No Matches
juce_gui_basics
filebrowser
juce_FileListComponent.h
Go to the documentation of this file.
1
/*
2
==============================================================================
3
4
This file is part of the JUCE library.
5
Copyright (c) 2022 - Raw Material Software Limited
6
7
JUCE is an open source library subject to commercial or open-source
8
licensing.
9
10
By using JUCE, you agree to the terms of both the JUCE 7 End-User License
11
Agreement and JUCE Privacy Policy.
12
13
End User License Agreement: www.juce.com/juce-7-licence
14
Privacy Policy: www.juce.com/juce-privacy-policy
15
16
Or: You may also use this code under the terms of the GPL v3 (see
17
www.gnu.org/licenses).
18
19
JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
20
EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
21
DISCLAIMED.
22
23
==============================================================================
24
*/
25
26
namespace
juce
27
{
28
29
//==============================================================================
43
class
JUCE_API
FileListComponent
:
private
ListBoxModel
,
44
public
ListBox
,
45
public
DirectoryContentsDisplayComponent
,
46
private
ChangeListener
47
{
48
public
:
49
//==============================================================================
51
FileListComponent
(
DirectoryContentsList
& listToShow);
52
54
~FileListComponent
()
override
;
55
56
//==============================================================================
60
int
getNumSelectedFiles()
const override
;
61
66
File
getSelectedFile (
int
index = 0)
const override
;
67
69
void
deselectAllFiles()
override
;
70
72
void
scrollToTop()
override
;
73
76
void
setSelectedFile (
const
File
&)
override
;
77
78
private
:
79
//==============================================================================
80
File
lastDirectory, fileWaitingToBeSelected;
81
class
ItemComponent
;
82
83
void
changeListenerCallback (
ChangeBroadcaster
*)
override
;
84
int
getNumRows()
override
;
85
String
getNameForRow (
int
rowNumber)
override
;
86
void
paintListBoxItem (
int
,
Graphics
&,
int
,
int
,
bool
)
override
;
87
Component
* refreshComponentForRow (
int
rowNumber,
bool
isRowSelected,
Component
*)
override
;
88
void
selectedRowsChanged (
int
row)
override
;
89
void
deleteKeyPressed (
int
currentSelectedRow)
override
;
90
void
returnKeyPressed (
int
currentSelectedRow)
override
;
91
92
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR
(
FileListComponent
)
93
};
94
95
}
// namespace juce
juce::ChangeBroadcaster
Holds a list of ChangeListeners, and sends messages to them when instructed.
Definition
juce_ChangeBroadcaster.h:35
juce::ChangeListener
Receives change event callbacks that are sent out by a ChangeBroadcaster.
Definition
juce_ChangeListener.h:45
juce::Component
The base class for all JUCE user-interface objects.
Definition
juce_Component.h:36
juce::DirectoryContentsDisplayComponent
A base class for components that display a list of the files in a directory.
Definition
juce_DirectoryContentsDisplayComponent.h:38
juce::DirectoryContentsList
A class to asynchronously scan for details about the files in a directory.
Definition
juce_DirectoryContentsList.h:43
juce::FileListComponent::ItemComponent
Definition
juce_FileListComponent.cpp:106
juce::FileListComponent
A component that displays the files in a directory as a listbox.
Definition
juce_FileListComponent.h:47
juce::File
Represents a local file or directory.
Definition
juce_File.h:45
juce::Graphics
A graphics context, used for drawing a component or image.
Definition
juce_GraphicsContext.h:45
juce::ListBoxModel
A subclass of this is used to drive a ListBox.
Definition
juce_ListBox.h:38
juce::ListBox
A list of items that can be scrolled vertically.
Definition
juce_ListBox.h:194
juce::String
The JUCE String class!
Definition
juce_String.h:53
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR
#define JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(className)
This is a shorthand way of writing both a JUCE_DECLARE_NON_COPYABLE and JUCE_LEAK_DETECTOR macro for ...
Definition
juce_PlatformDefs.h:242
juce
JUCE Namespace.
Definition
juce_AudioPlayHead.cpp:24
« « « Anklang Documentation