Browse Source

RTAS description update to use JucePlugin_Desc macro. FileBasedDocument addition for customising save filename. TableHeaderComponent fix to avoid spurious mouse-overs.

tags/2021-05-28
jules 13 years ago
parent
commit
fb01e6dfc2
5 changed files with 27 additions and 12 deletions
  1. +1
    -1
      modules/juce_audio_plugin_client/RTAS/juce_RTAS_Wrapper.cpp
  2. +11
    -8
      modules/juce_gui_basics/widgets/juce_TableHeaderComponent.cpp
  3. +2
    -1
      modules/juce_gui_basics/widgets/juce_TableHeaderComponent.h
  4. +6
    -2
      modules/juce_gui_extra/documents/juce_FileBasedDocument.cpp
  5. +7
    -0
      modules/juce_gui_extra/documents/juce_FileBasedDocument.h

+ 1
- 1
modules/juce_audio_plugin_client/RTAS/juce_RTAS_Wrapper.cpp View File

@@ -959,7 +959,7 @@ private:
static String createRTASName()
{
return String (JucePlugin_Name) + "\n"
+ String (JucePlugin_Name).substring (0, 4);
+ String (JucePlugin_Desc);
}
static EPlugIn_StemFormat getFormatForChans (const int numChans) noexcept


+ 11
- 8
modules/juce_gui_basics/widgets/juce_TableHeaderComponent.cpp View File

@@ -559,17 +559,17 @@ void TableHeaderComponent::resized()
void TableHeaderComponent::mouseMove (const MouseEvent& e)
{
updateColumnUnderMouse (e.x, e.y);
updateColumnUnderMouse (e);
}
void TableHeaderComponent::mouseEnter (const MouseEvent& e)
{
updateColumnUnderMouse (e.x, e.y);
updateColumnUnderMouse (e);
}
void TableHeaderComponent::mouseExit (const MouseEvent& e)
{
updateColumnUnderMouse (e.x, e.y);
setColumnUnderMouse (0);
}
void TableHeaderComponent::mouseDown (const MouseEvent& e)
@@ -771,7 +771,7 @@ void TableHeaderComponent::mouseUp (const MouseEvent& e)
endDrag (getIndexOfColumnId (columnIdBeingDragged, true));
updateColumnUnderMouse (e.x, e.y);
updateColumnUnderMouse (e);
if (columnIdUnderMouse != 0 && e.mouseWasClicked() && ! e.mods.isPopupMenu())
columnClicked (columnIdUnderMouse, e.mods);
@@ -892,11 +892,8 @@ int TableHeaderComponent::getResizeDraggerAt (const int mouseX) const
return 0;
}
void TableHeaderComponent::updateColumnUnderMouse (int x, int y)
void TableHeaderComponent::setColumnUnderMouse (const int newCol)
{
const int newCol = (reallyContains (Point<int> (x, y), true) && getResizeDraggerAt (x) == 0)
? getColumnIdAtX (x) : 0;
if (newCol != columnIdUnderMouse)
{
columnIdUnderMouse = newCol;
@@ -904,6 +901,12 @@ void TableHeaderComponent::updateColumnUnderMouse (int x, int y)
}
}
void TableHeaderComponent::updateColumnUnderMouse (const MouseEvent& e)
{
setColumnUnderMouse (reallyContains (e.getPosition(), true) && getResizeDraggerAt (e.x) == 0
? getColumnIdAtX (e.x) : 0);
}
static void tableHeaderMenuCallback (int result, TableHeaderComponent* tableHeader, int columnIdClicked)
{
if (tableHeader != nullptr && result != 0)


+ 2
- 1
modules/juce_gui_basics/widgets/juce_TableHeaderComponent.h View File

@@ -419,7 +419,8 @@ private:
void beginDrag (const MouseEvent&);
void endDrag (int finalIndex);
int getResizeDraggerAt (int mouseX) const;
void updateColumnUnderMouse (int x, int y);
void updateColumnUnderMouse (const MouseEvent&);
void setColumnUnderMouse (int columnId);
void resizeColumnsToFit (int firstColumnIndex, int targetTotalWidth);
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (TableHeaderComponent);


+ 6
- 2
modules/juce_gui_extra/documents/juce_FileBasedDocument.cpp View File

@@ -229,6 +229,11 @@ FileBasedDocument::SaveResult FileBasedDocument::saveIfNeededAndUserAgrees()
return userCancelledSave;
}
File FileBasedDocument::getSuggestedSaveAsFile (const File& defaultFile)
{
return defaultFile.withFileExtension (fileExtension).getNonexistentSibling (true);
}
FileBasedDocument::SaveResult FileBasedDocument::saveAsInteractive (const bool warnAboutOverwritingExistingFiles)
{
File f;
@@ -248,8 +253,7 @@ FileBasedDocument::SaveResult FileBasedDocument::saveAsInteractive (const bool w
else
f = File::getSpecialLocation (File::userDocumentsDirectory).getChildFile (legalFilename);
f = f.withFileExtension (fileExtension)
.getNonexistentSibling (true);
f = getSuggestedSaveAsFile (f);
FileChooser fc (saveFileDialogTitle, f, fileWildcard);


+ 7
- 0
modules/juce_gui_extra/documents/juce_FileBasedDocument.h View File

@@ -275,6 +275,13 @@ protected:
*/
virtual void setLastDocumentOpened (const File& file) = 0;
/** This is called by saveAsInteractive() to allow you to optionally customise the
filename that the user is presented with in the save dialog.
The defaultFile parameter is an initial suggestion based on what the class knows
about the current document - you can return a variation on this file with a different
extension, etc, or just return something completely different.
*/
virtual File getSuggestedSaveAsFile (const File& defaultFile);
private:
//==============================================================================


Loading…
Cancel
Save