35 :
owner (fileChooser),
41 browserComponent (
flags, owner.startingFile, &filter, preview),
42 dialogBox (owner.title, {}, browserComponent, warnAboutOverwrite,
53 dialogBox.centreWithDefaultSize (
nullptr);
55 const std::weak_ptr<NonNative> ref (shared_from_this());
58 if (
auto locked = ref.lock())
59 locked->modalStateFinished (
r);
67 #if JUCE_MODAL_LOOPS_PERMITTED
101 const File& currentFileOrDirectory,
102 const String& fileFilters,
103 const bool useNativeBox,
104 const bool treatFilePackagesAsDirectories,
106 :
title (chooserBoxTitle),
109 parent (parentComponentToUse),
126#if JUCE_MODAL_LOOPS_PERMITTED
134bool FileChooser::browseForMultipleFilesToOpen (FilePreviewComponent* previewComp)
136 return showDialog (FileBrowserComponent::openMode
137 | FileBrowserComponent::canSelectFiles
138 | FileBrowserComponent::canSelectMultipleItems,
142bool FileChooser::browseForMultipleFilesOrDirectories (FilePreviewComponent* previewComp)
144 return showDialog (FileBrowserComponent::openMode
145 | FileBrowserComponent::canSelectFiles
146 | FileBrowserComponent::canSelectDirectories
147 | FileBrowserComponent::canSelectMultipleItems,
151bool FileChooser::browseForFileToSave (
const bool warnAboutOverwrite)
153 return showDialog (FileBrowserComponent::saveMode
154 | FileBrowserComponent::canSelectFiles
155 | (warnAboutOverwrite ? FileBrowserComponent::warnAboutOverwriting : 0),
159bool FileChooser::browseForDirectory()
161 return showDialog (FileBrowserComponent::openMode
162 | FileBrowserComponent::canSelectDirectories,
166bool FileChooser::showDialog (
const int flags, FilePreviewComponent*
const previewComp)
168 FocusRestorer focusRestorer;
203 if (
pimpl !=
nullptr)
226 return std::make_unique<NonNative> (*
this,
flags, previewComp);
234 if (url.isLocalFile())
235 files.add (url.getLocalFile());
246 jassert (fileResults.size() <= 1);
248 return fileResults.getFirst();
#define noexcept
Definition DistrhoDefines.h:72
@ backgroundColourId
Definition juce_AlertWindow.h:443
Definition juce_Array.h:56
Definition juce_Component.h:36
int getHeight() const noexcept
Definition juce_Component.h:274
int getWidth() const noexcept
Definition juce_Component.h:271
Definition juce_FileBrowserComponent.h:45
@ saveMode
Definition juce_FileBrowserComponent.h:56
@ canSelectFiles
Definition juce_FileBrowserComponent.h:58
@ canSelectDirectories
Definition juce_FileBrowserComponent.h:60
@ openMode
Definition juce_FileBrowserComponent.h:54
Definition juce_FileChooser.cpp:32
NonNative(FileChooser &fileChooser, int flags, FilePreviewComponent *preview)
Definition juce_FileChooser.cpp:34
FileChooserDialogBox dialogBox
Definition juce_FileChooser.cpp:94
bool selectsFiles
Definition juce_FileChooser.cpp:90
~NonNative() override
Definition juce_FileChooser.cpp:46
void modalStateFinished(int returnValue)
Definition juce_FileChooser.cpp:75
FileBrowserComponent browserComponent
Definition juce_FileChooser.cpp:93
void runModally() override
Definition juce_FileChooser.cpp:65
bool selectsDirectories
Definition juce_FileChooser.cpp:90
WildcardFileFilter filter
Definition juce_FileChooser.cpp:92
void launch() override
Definition juce_FileChooser.cpp:51
FileChooser & owner
Definition juce_FileChooser.cpp:89
bool warnAboutOverwrite
Definition juce_FileChooser.cpp:90
Definition juce_FileChooserDialogBox.h:73
const Array< URL > & getURLResults() const noexcept
Definition juce_FileChooser.h:284
Array< URL > results
Definition juce_FileChooser.h:306
Component * parent
Definition juce_FileChooser.h:305
const bool useNativeDialogBox
Definition juce_FileChooser.h:307
static bool isPlatformDialogAvailable()
Definition juce_linux_FileChooser.cpp:261
const bool treatFilePackagesAsDirs
Definition juce_FileChooser.h:308
String title
Definition juce_FileChooser.h:303
~FileChooser()
Definition juce_FileChooser.cpp:121
URL getURLResult() const
Definition juce_FileChooser.cpp:251
Array< File > getResults() const noexcept
Definition juce_FileChooser.cpp:229
void launchAsync(int flags, std::function< void(const FileChooser &)>, FilePreviewComponent *previewComponent=nullptr)
Definition juce_FileChooser.cpp:180
String filters
Definition juce_FileChooser.h:303
void finished(const Array< URL > &)
Definition juce_FileChooser.cpp:260
std::shared_ptr< Pimpl > createPimpl(int, FilePreviewComponent *)
Definition juce_FileChooser.cpp:195
static std::shared_ptr< Pimpl > showPlatformDialog(FileChooser &, int, FilePreviewComponent *)
Definition juce_linux_FileChooser.cpp:271
std::shared_ptr< Pimpl > pimpl
Definition juce_FileChooser.h:323
File startingFile
Definition juce_FileChooser.h:304
File getResult() const
Definition juce_FileChooser.cpp:240
FileChooser(const String &dialogBoxTitle, const File &initialFileOrDirectory=File(), const String &filePatternsAllowed=String(), bool useOSNativeDialogBox=true, bool treatFilePackagesAsDirectories=false, Component *parentComponent=nullptr)
Definition juce_FileChooser.cpp:100
std::function< void(const FileChooser &)> asyncCallback
Definition juce_FileChooser.h:309
Definition juce_File.h:45
Definition juce_FilePreviewComponent.h:44
~FilePreviewComponent() override
Definition juce_FileChooser.cpp:275
FilePreviewComponent()
Definition juce_FileChooser.cpp:274
static ModalComponentManager::Callback * create(CallbackFn &&fn)
Definition juce_ModalComponentManager.h:174
Definition juce_String.h:53
bool containsNonWhitespaceChars() const noexcept
Definition juce_String.cpp:1814
Definition juce_WildcardFileFilter.h:38
register unsigned i
Definition inflate.c:1575
static char ** files
Definition misc.c:28
Definition carla_juce.cpp:31
static int showDialog(const MessageBoxOptions &options, ModalComponentManager::Callback *callback, Async async)
Definition juce_linux_Windowing.cpp:815
void ignoreUnused(Types &&...) noexcept
Definition juce_MathsFunctions.h:333
jack_client_t client jack_client_t client jack_client_t client jack_client_t JackInfoShutdownCallback void arg jack_client_t jack_port_t port void func jack_client_t const char const char unsigned long flags
Definition juce_linux_JackAudio.cpp:69
Definition juce_FileChooser.h:316
RECT const char void(* callback)(const char *droppath))) SWELL_API_DEFINE(BOOL
Definition swell-functions.h:1004
int r
Definition crypt.c:458
int result
Definition process.c:1455
#define void
Definition unzip.h:396
#define const
Definition zconf.h:137