mirror of
https://github.com/juce-framework/JUCE.git
synced 2026-01-10 23:44:24 +00:00
This commit is contained in:
parent
490de6b6a2
commit
a47ddae4a3
10 changed files with 1086 additions and 1065 deletions
|
|
@ -181,6 +181,7 @@ bool PlatformUtilities::launchEmailWithAttachments (const String& targetEmailAdd
|
|||
OSAError err = OSACompileExecute (comp, &source,
|
||||
kOSANullScript, kOSAModeNull,
|
||||
&resultID);
|
||||
(void) err;
|
||||
AEDisposeDesc (&source);
|
||||
CloseComponent (comp);
|
||||
|
||||
|
|
|
|||
|
|
@ -29,7 +29,6 @@
|
|||
==============================================================================
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
This file contains posix routines that are common to both the Linux and Mac builds.
|
||||
|
||||
|
|
@ -463,4 +462,3 @@ void InterProcessLock::exit() throw()
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -53,6 +53,10 @@
|
|||
#pragma comment(lib, "OpenGL32.Lib")
|
||||
#pragma comment(lib, "GlU32.Lib")
|
||||
#endif
|
||||
|
||||
#if JUCE_QUICKTIME_AUDIOFORMAT
|
||||
#pragma comment(lib, "QTMLClient.lib")
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -25,6 +25,7 @@ Changelist for version 1.46
|
|||
- new classes: InputSource and FileInputSource. These encapsulate some kind of resource, and also replace the XmlInputSource class.
|
||||
- moved some of the posix code that was the same in the mac and linux builds into a single, shared file
|
||||
- fixed InterprocessLock on mac/linux so that it can't get stuck when an app quits unexpectedly
|
||||
- added an option to splash screens to close themselves when the mouse is clicked
|
||||
|
||||
==============================================================================
|
||||
Changelist for version 1.45
|
||||
|
|
|
|||
|
|
@ -79,10 +79,10 @@ void MidiOutput::sendBlockOfMessages (const MidiBuffer& buffer,
|
|||
|
||||
const ScopedLock sl (lock);
|
||||
|
||||
if (firstMessage == 0)
|
||||
if (firstMessage == 0 || firstMessage->message.getTimeStamp() > eventTime)
|
||||
{
|
||||
m->next = firstMessage;
|
||||
firstMessage = m;
|
||||
m->next = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
|||
|
|
@ -36,6 +36,7 @@ BEGIN_JUCE_NAMESPACE
|
|||
#include "juce_SplashScreen.h"
|
||||
#include "../../../events/juce_MessageManager.h"
|
||||
#include "../../graphics/imaging/juce_ImageCache.h"
|
||||
#include "../juce_Desktop.h"
|
||||
|
||||
|
||||
//==============================================================================
|
||||
|
|
@ -58,7 +59,8 @@ SplashScreen::~SplashScreen()
|
|||
void SplashScreen::show (const String& title,
|
||||
Image* const backgroundImage_,
|
||||
const int minimumTimeToDisplayFor,
|
||||
const bool useDropShadow)
|
||||
const bool useDropShadow,
|
||||
const bool removeOnMouseClick)
|
||||
{
|
||||
backgroundImage = backgroundImage_;
|
||||
|
||||
|
|
@ -74,7 +76,8 @@ void SplashScreen::show (const String& title,
|
|||
backgroundImage_->getWidth(),
|
||||
backgroundImage_->getHeight(),
|
||||
minimumTimeToDisplayFor,
|
||||
useDropShadow);
|
||||
useDropShadow,
|
||||
removeOnMouseClick);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -82,7 +85,8 @@ void SplashScreen::show (const String& title,
|
|||
const int width,
|
||||
const int height,
|
||||
const int minimumTimeToDisplayFor,
|
||||
const bool useDropShadow)
|
||||
const bool useDropShadow,
|
||||
const bool removeOnMouseClick)
|
||||
{
|
||||
setName (title);
|
||||
setAlwaysOnTop (true);
|
||||
|
|
@ -97,8 +101,13 @@ void SplashScreen::show (const String& title,
|
|||
|
||||
repaint();
|
||||
|
||||
originalClickCounter = removeOnMouseClick
|
||||
? Desktop::getMouseButtonClickCounter()
|
||||
: INT_MAX;
|
||||
|
||||
earliestTimeToDelete = Time::getCurrentTime() + RelativeTime::milliseconds (minimumTimeToDisplayFor);
|
||||
startTimer (200);
|
||||
|
||||
startTimer (50);
|
||||
}
|
||||
|
||||
//==============================================================================
|
||||
|
|
@ -116,7 +125,8 @@ void SplashScreen::paint (Graphics& g)
|
|||
|
||||
void SplashScreen::timerCallback()
|
||||
{
|
||||
if (Time::getCurrentTime() > earliestTimeToDelete)
|
||||
if (Time::getCurrentTime() > earliestTimeToDelete
|
||||
|| Desktop::getMouseButtonClickCounter() > originalClickCounter)
|
||||
{
|
||||
delete this;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -99,11 +99,14 @@ public:
|
|||
disappearing, but if initialisation is very quick, this lets
|
||||
you make sure that people get a good look at your splash.
|
||||
@param useDropShadow if true, the window will have a drop shadow
|
||||
@param removeOnMouseClick if true, the window will go away as soon as the user clicks
|
||||
the mouse (anywhere)
|
||||
*/
|
||||
void show (const String& title,
|
||||
Image* const backgroundImage,
|
||||
const int minimumTimeToDisplayFor,
|
||||
const bool useDropShadow);
|
||||
const bool useDropShadow,
|
||||
const bool removeOnMouseClick = true);
|
||||
|
||||
/** Creates a SplashScreen object with a specified size.
|
||||
|
||||
|
|
@ -124,12 +127,15 @@ public:
|
|||
disappearing, but if initialisation is very quick, this lets
|
||||
you make sure that people get a good look at your splash.
|
||||
@param useDropShadow if true, the window will have a drop shadow
|
||||
@param removeOnMouseClick if true, the window will go away as soon as the user clicks
|
||||
the mouse (anywhere)
|
||||
*/
|
||||
void show (const String& title,
|
||||
const int width,
|
||||
const int height,
|
||||
const int minimumTimeToDisplayFor,
|
||||
const bool useDropShadow);
|
||||
const bool useDropShadow,
|
||||
const bool removeOnMouseClick = true);
|
||||
|
||||
//==============================================================================
|
||||
/** @internal */
|
||||
|
|
@ -143,6 +149,7 @@ public:
|
|||
private:
|
||||
Image* backgroundImage;
|
||||
Time earliestTimeToDelete;
|
||||
int originalClickCounter;
|
||||
bool isImageInCache;
|
||||
|
||||
SplashScreen (const SplashScreen&);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue