151 virtual void shutdown() = 0;
241 static StringArray JUCE_CALLTYPE getCommandLineParameterArray();
246 static String JUCE_CALLTYPE getCommandLineParameters();
282 static int main (
int argc,
const char*
argv[]);
284 static void appWillTerminateByForce();
286 static CreateInstanceFunction createInstance;
292 virtual bool initialiseApp();
294 static void JUCE_CALLTYPE sendUnhandledException (
const std::exception*,
const char*
sourceFile,
int lineNumber);
295 bool sendCommandLineToPreexistingInstance();
301 int appReturnValue = 0;
302 bool stillInitialising =
true;
304 struct MultipleInstanceHandler;
305 std::unique_ptr<MultipleInstanceHandler> multipleInstanceHandler;
312#if JUCE_CATCH_UNHANDLED_EXCEPTIONS || defined (DOXYGEN)
324 #define JUCE_CATCH_EXCEPTION \
325 catch (const std::exception& e) { juce::JUCEApplicationBase::sendUnhandledException (&e, __FILE__, __LINE__); } \
326 catch (...) { juce::JUCEApplicationBase::sendUnhandledException (nullptr, __FILE__, __LINE__); }
330 #define JUCE_CATCH_EXCEPTION
bool isInitialising() const noexcept
virtual void systemRequestedQuit()=0
virtual void initialise(const String &commandLineParameters)=0
virtual const String getApplicationName()=0
virtual void memoryWarningReceived()
virtual void suspended()=0
virtual void anotherInstanceStarted(const String &commandLine)=0
virtual bool backButtonPressed()
static JUCEApplicationBase * getInstance() noexcept
virtual const String getApplicationVersion()=0
static bool isStandaloneApp() noexcept
virtual void unhandledException(const std::exception *, const String &sourceFilename, int lineNumber)=0
virtual bool moreThanOneInstanceAllowed()=0
int getApplicationReturnValue() const noexcept