openshot-audio
0.1.6
|
#include <juce_gui_basics.h>
Classes | |
struct | LookAndFeelMethods |
Public Types | |
enum | FileChooserFlags { openMode = 1, saveMode = 2, canSelectFiles = 4, canSelectDirectories = 8, canSelectMultipleItems = 16, useTreeView = 32, filenameBoxIsReadOnly = 64, warnAboutOverwriting = 128, doNotClearFileNameOnRootChange = 256 } |
![]() | |
enum | FocusChangeType { focusChangedByMouseClick, focusChangedByTabKey, focusChangedDirectly } |
Public Member Functions | |
FileBrowserComponent (int flags, const File &initialFileOrDirectory, const FileFilter *fileFilter, FilePreviewComponent *previewComp) | |
~FileBrowserComponent () | |
int | getNumSelectedFiles () const noexcept |
File | getSelectedFile (int index) const noexcept |
void | deselectAllFiles () |
bool | currentFileIsValid () const |
File | getHighlightedFile () const noexcept |
const File & | getRoot () const |
void | setRoot (const File &newRootDirectory) |
void | setFileName (const String &newName) |
void | goUp () |
void | refresh () |
void | setFileFilter (const FileFilter *newFileFilter) |
virtual String | getActionVerb () const |
bool | isSaveMode () const noexcept |
void | setFilenameBoxLabel (const String &name) |
void | addListener (FileBrowserListener *listener) |
void | removeListener (FileBrowserListener *listener) |
void | resized () override |
void | buttonClicked (Button *) override |
void | comboBoxChanged (ComboBox *) override |
void | textEditorTextChanged (TextEditor &) override |
void | textEditorReturnKeyPressed (TextEditor &) override |
void | textEditorEscapeKeyPressed (TextEditor &) override |
void | textEditorFocusLost (TextEditor &) override |
bool | keyPressed (const KeyPress &) override |
void | selectionChanged () override |
void | fileClicked (const File &, const MouseEvent &) override |
void | fileDoubleClicked (const File &) override |
void | browserRootChanged (const File &) override |
bool | isFileSuitable (const File &) const override |
bool | isDirectorySuitable (const File &) const override |
FilePreviewComponent * | getPreviewComponent () const noexcept |
DirectoryContentsDisplayComponent * | getDisplayComponent () const noexcept |
![]() | |
Component () noexcept | |
virtual | ~Component () |
Component (const String &componentName) noexcept | |
const String & | getName () const noexcept |
virtual void | setName (const String &newName) |
const String & | getComponentID () const noexcept |
void | setComponentID (const String &newID) |
virtual void | setVisible (bool shouldBeVisible) |
bool | isVisible () const noexcept |
virtual void | visibilityChanged () |
bool | isShowing () const |
virtual void | addToDesktop (int windowStyleFlags, void *nativeWindowToAttachTo=nullptr) |
void | removeFromDesktop () |
bool | isOnDesktop () const noexcept |
ComponentPeer * | getPeer () const |
virtual void | userTriedToCloseWindow () |
virtual void | minimisationStateChanged (bool isNowMinimised) |
virtual float | getDesktopScaleFactor () const |
void | toFront (bool shouldAlsoGainFocus) |
void | toBack () |
void | toBehind (Component *other) |
void | setAlwaysOnTop (bool shouldStayOnTop) |
bool | isAlwaysOnTop () const noexcept |
int | getX () const noexcept |
int | getY () const noexcept |
int | getWidth () const noexcept |
int | getHeight () const noexcept |
int | getRight () const noexcept |
Point< int > | getPosition () const noexcept |
int | getBottom () const noexcept |
const Rectangle< int > & | getBounds () const noexcept |
Rectangle< int > | getLocalBounds () const noexcept |
Rectangle< int > | getBoundsInParent () const noexcept |
int | getScreenX () const |
int | getScreenY () const |
Point< int > | getScreenPosition () const |
Rectangle< int > | getScreenBounds () const |
Point< int > | getLocalPoint (const Component *sourceComponent, Point< int > pointRelativeToSourceComponent) const |
Point< float > | getLocalPoint (const Component *sourceComponent, Point< float > pointRelativeToSourceComponent) const |
Rectangle< int > | getLocalArea (const Component *sourceComponent, const Rectangle< int > &areaRelativeToSourceComponent) const |
Point< int > | localPointToGlobal (Point< int > localPoint) const |
Point< float > | localPointToGlobal (Point< float > localPoint) const |
Rectangle< int > | localAreaToGlobal (const Rectangle< int > &localArea) const |
void | setTopLeftPosition (int x, int y) |
void | setTopLeftPosition (Point< int > newTopLeftPosition) |
void | setTopRightPosition (int x, int y) |
void | setSize (int newWidth, int newHeight) |
void | setBounds (int x, int y, int width, int height) |
void | setBounds (const Rectangle< int > &newBounds) |
void | setBounds (const RelativeRectangle &newBounds) |
void | setBounds (const String &newBoundsExpression) |
void | setBoundsRelative (float proportionalX, float proportionalY, float proportionalWidth, float proportionalHeight) |
void | setBoundsInset (const BorderSize< int > &borders) |
void | setBoundsToFit (int x, int y, int width, int height, Justification justification, bool onlyReduceInSize) |
void | setCentrePosition (int x, int y) |
void | setCentreRelative (float x, float y) |
void | centreWithSize (int width, int height) |
void | setTransform (const AffineTransform &transform) |
AffineTransform | getTransform () const |
bool | isTransformed () const noexcept |
int | proportionOfWidth (float proportion) const noexcept |
int | proportionOfHeight (float proportion) const noexcept |
int | getParentWidth () const noexcept |
int | getParentHeight () const noexcept |
Rectangle< int > | getParentMonitorArea () const |
int | getNumChildComponents () const noexcept |
Component * | getChildComponent (int index) const noexcept |
int | getIndexOfChildComponent (const Component *child) const noexcept |
Component * | findChildWithID (StringRef componentID) const noexcept |
void | addChildComponent (Component *child, int zOrder=-1) |
void | addChildComponent (Component &child, int zOrder=-1) |
void | addAndMakeVisible (Component *child, int zOrder=-1) |
void | addAndMakeVisible (Component &child, int zOrder=-1) |
void | addChildAndSetID (Component *child, const String &componentID) |
void | removeChildComponent (Component *childToRemove) |
Component * | removeChildComponent (int childIndexToRemove) |
void | removeAllChildren () |
void | deleteAllChildren () |
Component * | getParentComponent () const noexcept |
template<class TargetClass > | |
TargetClass * | findParentComponentOfClass () const |
Component * | getTopLevelComponent () const noexcept |
bool | isParentOf (const Component *possibleChild) const noexcept |
virtual void | parentHierarchyChanged () |
virtual void | childrenChanged () |
virtual bool | hitTest (int x, int y) |
void | setInterceptsMouseClicks (bool allowClicksOnThisComponent, bool allowClicksOnChildComponents) noexcept |
void | getInterceptsMouseClicks (bool &allowsClicksOnThisComponent, bool &allowsClicksOnChildComponents) const noexcept |
bool | contains (Point< int > localPoint) |
bool | reallyContains (Point< int > localPoint, bool returnTrueIfWithinAChild) |
Component * | getComponentAt (int x, int y) |
Component * | getComponentAt (Point< int > position) |
void | repaint () |
void | repaint (int x, int y, int width, int height) |
void | repaint (const Rectangle< int > &area) |
void | setBufferedToImage (bool shouldBeBuffered) |
Image | createComponentSnapshot (const Rectangle< int > &areaToGrab, bool clipImageToComponentBounds=true, float scaleFactor=1.0f) |
void | paintEntireComponent (Graphics &context, bool ignoreAlphaLevel) |
void | setPaintingIsUnclipped (bool shouldPaintWithoutClipping) noexcept |
void | setComponentEffect (ImageEffectFilter *newEffect) |
ImageEffectFilter * | getComponentEffect () const noexcept |
LookAndFeel & | getLookAndFeel () const noexcept |
void | setLookAndFeel (LookAndFeel *newLookAndFeel) |
virtual void | lookAndFeelChanged () |
void | sendLookAndFeelChange () |
void | setOpaque (bool shouldBeOpaque) |
bool | isOpaque () const noexcept |
void | setBroughtToFrontOnMouseClick (bool shouldBeBroughtToFront) noexcept |
bool | isBroughtToFrontOnMouseClick () const noexcept |
void | setWantsKeyboardFocus (bool wantsFocus) noexcept |
bool | getWantsKeyboardFocus () const noexcept |
void | setMouseClickGrabsKeyboardFocus (bool shouldGrabFocus) |
bool | getMouseClickGrabsKeyboardFocus () const noexcept |
void | grabKeyboardFocus () |
bool | hasKeyboardFocus (bool trueIfChildIsFocused) const |
void | moveKeyboardFocusToSibling (bool moveToNext) |
virtual KeyboardFocusTraverser * | createFocusTraverser () |
int | getExplicitFocusOrder () const |
void | setExplicitFocusOrder (int newFocusOrderIndex) |
void | setFocusContainer (bool shouldBeFocusContainer) noexcept |
bool | isFocusContainer () const noexcept |
bool | isEnabled () const noexcept |
void | setEnabled (bool shouldBeEnabled) |
virtual void | enablementChanged () |
void | setAlpha (float newAlpha) |
float | getAlpha () const |
void | setMouseCursor (const MouseCursor &cursorType) |
virtual MouseCursor | getMouseCursor () |
void | updateMouseCursor () const |
virtual void | paint (Graphics &g) |
virtual void | paintOverChildren (Graphics &g) |
virtual void | mouseMove (const MouseEvent &event) override |
virtual void | mouseEnter (const MouseEvent &event) override |
virtual void | mouseExit (const MouseEvent &event) override |
virtual void | mouseDown (const MouseEvent &event) override |
virtual void | mouseDrag (const MouseEvent &event) override |
virtual void | mouseUp (const MouseEvent &event) override |
virtual void | mouseDoubleClick (const MouseEvent &event) override |
virtual void | mouseWheelMove (const MouseEvent &event, const MouseWheelDetails &wheel) override |
virtual void | mouseMagnify (const MouseEvent &event, float scaleFactor) |
void | setRepaintsOnMouseActivity (bool shouldRepaint) noexcept |
void | addMouseListener (MouseListener *newListener, bool wantsEventsForAllNestedChildComponents) |
void | removeMouseListener (MouseListener *listenerToRemove) |
void | addKeyListener (KeyListener *newListener) |
void | removeKeyListener (KeyListener *listenerToRemove) |
virtual bool | keyStateChanged (bool isKeyDown) |
virtual void | modifierKeysChanged (const ModifierKeys &modifiers) |
virtual void | focusGained (FocusChangeType cause) |
virtual void | focusLost (FocusChangeType cause) |
virtual void | focusOfChildComponentChanged (FocusChangeType cause) |
bool | isMouseOver (bool includeChildren=false) const |
bool | isMouseButtonDown () const |
bool | isMouseOverOrDragging () const |
Point< int > | getMouseXYRelative () const |
virtual void | moved () |
virtual void | childBoundsChanged (Component *child) |
virtual void | parentSizeChanged () |
virtual void | broughtToFront () |
void | addComponentListener (ComponentListener *newListener) |
void | removeComponentListener (ComponentListener *listenerToRemove) |
void | postCommandMessage (int commandId) |
virtual void | handleCommandMessage (int commandId) |
int | runModalLoop () |
void | enterModalState (bool takeKeyboardFocus=true, ModalComponentManager::Callback *callback=nullptr, bool deleteWhenDismissed=false) |
void | exitModalState (int returnValue) |
bool | isCurrentlyModal () const noexcept |
bool | isCurrentlyBlockedByAnotherModalComponent () const |
virtual bool | canModalEventBeSentToComponent (const Component *targetComponent) |
virtual void | inputAttemptWhenModal () |
NamedValueSet & | getProperties () noexcept |
const NamedValueSet & | getProperties () const noexcept |
Colour | findColour (int colourId, bool inheritFromParent=false) const |
void | setColour (int colourId, Colour newColour) |
void | removeColour (int colourId) |
bool | isColourSpecified (int colourId) const |
void | copyAllExplicitColoursTo (Component &target) const |
virtual void | colourChanged () |
virtual MarkerList * | getMarkers (bool xAxis) |
void * | getWindowHandle () const |
Positioner * | getPositioner () const noexcept |
void | setPositioner (Positioner *newPositioner) |
void | setCachedComponentImage (CachedComponentImage *newCachedImage) |
CachedComponentImage * | getCachedComponentImage () const noexcept |
JUCE_DEPRECATED (Point< int > relativePositionToGlobal(Point< int >) const) | |
JUCE_DEPRECATED (Point< int > globalPositionToRelative(Point< int >) const) | |
JUCE_DEPRECATED (Point< int > relativePositionToOtherComponent(const Component *, Point< int >) const) | |
![]() | |
virtual | ~MouseListener () |
Static Public Member Functions | |
static void | getDefaultRoots (StringArray &rootNames, StringArray &rootPaths) |
![]() | |
static Component *JUCE_CALLTYPE | getCurrentlyFocusedComponent () noexcept |
static void JUCE_CALLTYPE | unfocusAllComponents () |
static void JUCE_CALLTYPE | beginDragAutoRepeat (int millisecondsBetweenCallbacks) |
static bool JUCE_CALLTYPE | isMouseButtonDownAnywhere () noexcept |
static int JUCE_CALLTYPE | getNumCurrentlyModalComponents () noexcept |
static Component *JUCE_CALLTYPE | getCurrentlyModalComponent (int index=0) noexcept |
Protected Member Functions | |
virtual void | getRoots (StringArray &rootNames, StringArray &rootPaths) |
void | resetRecentPaths () |
![]() | |
virtual ComponentPeer * | createNewPeer (int styleFlags, void *nativeWindowToAttachTo) |
A component for browsing and selecting a file or directory to open or save.
This contains a FileListComponent and adds various boxes and controls for navigating and selecting a file. It can work in different modes so that it can be used for loading or saving a file, or for choosing a directory.
Various options for the browser.
A combination of these is passed into the FileBrowserComponent constructor.
FileBrowserComponent::FileBrowserComponent | ( | int | flags, |
const File & | initialFileOrDirectory, | ||
const FileFilter * | fileFilter, | ||
FilePreviewComponent * | previewComp | ||
) |
Creates a FileBrowserComponent.
flags | A combination of flags from the FileChooserFlags enumeration, used to specify the component's behaviour. The flags must contain either openMode or saveMode, and canSelectFiles and/or canSelectDirectories. |
initialFileOrDirectory | The file or directory that should be selected when the component begins. If this is File::nonexistent, a default directory will be chosen. |
fileFilter | an optional filter to use to determine which files are shown. If this is nullptr then all files are displayed. Note that a pointer is kept internally to this object, so make sure that it is not deleted before the FileBrowserComponent object is deleted. |
previewComp | an optional preview component that will be used to show previews of files that the user selects |
FileBrowserComponent::~FileBrowserComponent | ( | ) |
Destructor.
void FileBrowserComponent::addListener | ( | FileBrowserListener * | listener | ) |
Adds a listener to be told when the user selects and clicks on files.
|
overridevirtual |
Callback when the browser's root folder changes.
Implements juce::FileBrowserListener.
|
overridevirtual |
Called when the button is clicked.
Implements juce::Button::Listener.
|
overridevirtual |
Called when a ComboBox has its selected item changed.
Implements juce::ComboBox::Listener.
bool FileBrowserComponent::currentFileIsValid | ( | ) | const |
Returns true if the currently selected file(s) are usable.
This can be used to decide whether the user can press "ok" for the current file. What it does depends on the mode, so for example in an "open" mode, this only returns true if a file has been selected and if it exists. In a "save" mode, a non-existent file would also be valid.
void FileBrowserComponent::deselectAllFiles | ( | ) |
Deselects any files that are currently selected.
|
overridevirtual |
Callback when the user clicks on a file in the browser.
Implements juce::FileBrowserListener.
|
overridevirtual |
Callback when the user double-clicks on a file in the browser.
Implements juce::FileBrowserListener.
|
virtual |
Returns a verb to describe what should happen when the file is accepted.
E.g. if browsing in "load file" mode, this will be "Open", if in "save file" mode, it'll be "Save", etc.
|
static |
Returns a platform-specific list of names and paths for some suggested places the user might want to use as root folders. The list returned contains empty strings to indicate section breaks.
|
noexcept |
|
noexcept |
This returns the last item in the view that the user has highlighted. This may be different from getCurrentFile(), which returns the value that is shown in the filename box, and if there are multiple selections, this will only return one of them.
|
noexcept |
Returns the number of files that the user has got selected. If multiple select isn't active, this will only be 0 or 1. To get the complete list of files they've chosen, pass an index to getCurrentFile().
|
noexcept |
const File & FileBrowserComponent::getRoot | ( | ) | const |
Returns the directory whose contents are currently being shown in the listbox.
|
protectedvirtual |
Returns a list of names and paths for the default places the user might want to look.
By default this just calls getDefaultRoots(), but you may want to override it to return a custom list.
|
noexcept |
Returns one of the files that the user has chosen. If the box has multi-select enabled, the index lets you specify which of the files to get - see getNumSelectedFiles() to find out how many files were chosen.
void FileBrowserComponent::goUp | ( | ) |
Equivalent to pressing the "up" button to browse the parent directory.
|
overridevirtual |
Should return true if this directory is suitable for inclusion in whatever context the object is being used.
Implements juce::FileFilter.
|
overridevirtual |
Should return true if this file is suitable for inclusion in whatever context the object is being used.
Implements juce::FileFilter.
|
noexcept |
Returns true if the saveMode flag was set when this component was created.
|
overridevirtual |
Called when a key is pressed.
When a key is pressed, the component that has the keyboard focus will have this method called. Remember that a component will only be given the focus if its setWantsKeyboardFocus() method has been used to enable this.
If your implementation returns true, the event will be consumed and not passed on to any other listeners. If it returns false, the key will be passed to any KeyListeners that have been registered with this component. As soon as one of these returns true, the process will stop, but if they all return false, the event will be passed upwards to this component's parent, and so on.
The default implementation of this method does nothing and returns false.
Reimplemented from juce::Component.
void FileBrowserComponent::refresh | ( | ) |
Refreshes the directory that's currently being listed.
void FileBrowserComponent::removeListener | ( | FileBrowserListener * | listener | ) |
Removes a listener.
|
protected |
Updates the items in the dropdown list of recent paths with the values from getRoots().
|
overridevirtual |
Called when this component's size has been changed.
A component can implement this method to do things such as laying out its child components when its width or height changes.
The method is called synchronously as a result of the setBounds or setSize methods, so repeatedly changing a components size will repeatedly call its resized method (unlike things like repainting, where multiple calls to repaint are coalesced together).
If the component is a top-level window on the desktop, its size could also be changed by operating-system factors beyond the application's control.
Reimplemented from juce::Component.
|
overridevirtual |
Callback when the user selects a different file in the browser.
Implements juce::FileBrowserListener.
void FileBrowserComponent::setFileFilter | ( | const FileFilter * | newFileFilter | ) |
Changes the filter that's being used to sift the files.
void FileBrowserComponent::setFileName | ( | const String & | newName | ) |
Changes the name that is currently shown in the filename box.
void FileBrowserComponent::setFilenameBoxLabel | ( | const String & | name | ) |
Sets the label that will be displayed next to the filename entry box. By default this is just "file", but you might want to change it to something more appropriate for your app.
void FileBrowserComponent::setRoot | ( | const File & | newRootDirectory | ) |
Changes the directory that's being shown in the listbox.
|
overridevirtual |
Called when the user presses the escape key.
Reimplemented from juce::TextEditor::Listener.
|
overridevirtual |
Called when the text editor loses focus.
Reimplemented from juce::TextEditor::Listener.
|
overridevirtual |
Called when the user presses the return key.
Reimplemented from juce::TextEditor::Listener.
|
overridevirtual |
Called when the user changes the text in some way.
Reimplemented from juce::TextEditor::Listener.