mirror of
https://github.com/juce-framework/JUCE.git
synced 2026-01-23 01:44:22 +00:00
This commit is contained in:
parent
c742c0421b
commit
99102fb62e
12 changed files with 63 additions and 64 deletions
|
|
@ -29,9 +29,6 @@
|
|||
==============================================================================
|
||||
*/
|
||||
|
||||
#define WIN32_LEAN_AND_MEAN
|
||||
#define STRICT
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#pragma warning (disable: 4514)
|
||||
#pragma warning (push)
|
||||
|
|
|
|||
|
|
@ -55,9 +55,9 @@ extern long improbableWindowNumber; // defined in windowing.cpp
|
|||
|
||||
//==============================================================================
|
||||
static LRESULT CALLBACK juce_MessageWndProc (HWND h,
|
||||
UINT message,
|
||||
WPARAM wParam,
|
||||
LPARAM lParam) throw()
|
||||
const UINT message,
|
||||
const WPARAM wParam,
|
||||
const LPARAM lParam) throw()
|
||||
{
|
||||
JUCE_TRY
|
||||
{
|
||||
|
|
@ -93,15 +93,13 @@ static LRESULT CALLBACK juce_MessageWndProc (HWND h,
|
|||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
return DefWindowProc (h, message, wParam, lParam);
|
||||
}
|
||||
JUCE_CATCH_EXCEPTION
|
||||
|
||||
return 0;
|
||||
return DefWindowProc (h, message, wParam, lParam);
|
||||
}
|
||||
|
||||
bool juce_dispatchNextMessageOnSystemQueue (bool returnIfNoPendingMessages)
|
||||
bool juce_dispatchNextMessageOnSystemQueue (const bool returnIfNoPendingMessages)
|
||||
{
|
||||
MSG m;
|
||||
|
||||
|
|
|
|||
|
|
@ -136,6 +136,7 @@
|
|||
/>
|
||||
<Tool
|
||||
Name="VCLibrarianTool"
|
||||
AdditionalOptions="/LTCG"
|
||||
OutputFile="../../../bin/jucelib_static_$(PlatformName).lib"
|
||||
IgnoreAllDefaultLibraries="true"
|
||||
/>
|
||||
|
|
|
|||
|
|
@ -174,9 +174,12 @@
|
|||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
AdditionalLibraryDirectories="../../bin"
|
||||
GenerateManifest="false"
|
||||
ProgramDatabaseFile=".\Release/juce_application.pdb"
|
||||
SubSystem="2"
|
||||
OptimizeReferences="2"
|
||||
EnableCOMDATFolding="2"
|
||||
OptimizeForWindows98="1"
|
||||
LinkTimeCodeGeneration="1"
|
||||
TargetMachine="1"
|
||||
/>
|
||||
|
|
|
|||
|
|
@ -78,9 +78,13 @@
|
|||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
AdditionalLibraryDirectories="../../../juce/bin"
|
||||
GenerateManifest="false"
|
||||
IgnoreDefaultLibraryNames=""
|
||||
ProgramDatabaseFile=".\Release/jucedemo.pdb"
|
||||
SubSystem="2"
|
||||
OptimizeReferences="2"
|
||||
EnableCOMDATFolding="2"
|
||||
OptimizeForWindows98="1"
|
||||
TargetMachine="1"
|
||||
/>
|
||||
<Tool
|
||||
|
|
|
|||
|
|
@ -690,7 +690,7 @@ void Button::repeatTimerCallback() throw()
|
|||
class InternalButtonRepeatTimer : public Timer
|
||||
{
|
||||
public:
|
||||
InternalButtonRepeatTimer (Button& owner_)
|
||||
InternalButtonRepeatTimer (Button& owner_) throw()
|
||||
: owner (owner_)
|
||||
{
|
||||
}
|
||||
|
|
|
|||
|
|
@ -49,9 +49,9 @@ FileInputStream::FileInputStream (const File& f)
|
|||
currentPosition (0),
|
||||
needToSeek (true)
|
||||
{
|
||||
totalSize = file.getSize();
|
||||
totalSize = f.getSize();
|
||||
|
||||
fileHandle = juce_fileOpen (file.getFullPathName(), false);
|
||||
fileHandle = juce_fileOpen (f.getFullPathName(), false);
|
||||
}
|
||||
|
||||
FileInputStream::~FileInputStream()
|
||||
|
|
@ -60,11 +60,6 @@ FileInputStream::~FileInputStream()
|
|||
}
|
||||
|
||||
//==============================================================================
|
||||
const File FileInputStream::getFile() const
|
||||
{
|
||||
return file;
|
||||
}
|
||||
|
||||
int64 FileInputStream::getTotalLength()
|
||||
{
|
||||
return totalSize;
|
||||
|
|
|
|||
|
|
@ -57,7 +57,7 @@ public:
|
|||
~FileInputStream();
|
||||
|
||||
//==============================================================================
|
||||
const File getFile() const;
|
||||
const File& getFile() const throw() { return file; }
|
||||
|
||||
//==============================================================================
|
||||
int64 getTotalLength();
|
||||
|
|
|
|||
|
|
@ -38,46 +38,45 @@ BEGIN_JUCE_NAMESPACE
|
|||
|
||||
|
||||
//==============================================================================
|
||||
LocalisedStrings::LocalisedStrings (const String& fileContents)
|
||||
LocalisedStrings::LocalisedStrings (const String& fileContents) throw()
|
||||
{
|
||||
loadFromText (fileContents);
|
||||
}
|
||||
|
||||
LocalisedStrings::LocalisedStrings (const File& fileToLoad)
|
||||
LocalisedStrings::LocalisedStrings (const File& fileToLoad) throw()
|
||||
{
|
||||
loadFromText (fileToLoad.loadFileAsString());
|
||||
}
|
||||
|
||||
LocalisedStrings::~LocalisedStrings()
|
||||
LocalisedStrings::~LocalisedStrings() throw()
|
||||
{
|
||||
}
|
||||
|
||||
//==============================================================================
|
||||
const String LocalisedStrings::translate (const String& text) const
|
||||
const String LocalisedStrings::translate (const String& text) const throw()
|
||||
{
|
||||
return translations.getValue (text, text);
|
||||
}
|
||||
|
||||
static int findCloseQuote (const String& text, int startPos)
|
||||
static int findCloseQuote (const String& text, int startPos) throw()
|
||||
{
|
||||
bool lastCharWasSlash = false;
|
||||
tchar lastChar = 0;
|
||||
|
||||
for (;;)
|
||||
{
|
||||
const tchar c = text [startPos];
|
||||
|
||||
if (c == 0 || (c == T('"') && ! lastCharWasSlash))
|
||||
if (c == 0 || (c == T('"') && lastChar != T('\\')))
|
||||
break;
|
||||
|
||||
lastCharWasSlash = (c == T('\\'));
|
||||
|
||||
lastChar = c;
|
||||
++startPos;
|
||||
}
|
||||
|
||||
return startPos;
|
||||
}
|
||||
|
||||
static const String unescapeString (const String& s)
|
||||
static const String unescapeString (const String& s) throw()
|
||||
{
|
||||
return s.replace (T("\\\""), T("\""))
|
||||
.replace (T("\\\'"), T("\'"))
|
||||
|
|
@ -86,7 +85,7 @@ static const String unescapeString (const String& s)
|
|||
.replace (T("\\n"), T("\n"));
|
||||
}
|
||||
|
||||
void LocalisedStrings::loadFromText (const String& fileContents)
|
||||
void LocalisedStrings::loadFromText (const String& fileContents) throw()
|
||||
{
|
||||
StringArray lines;
|
||||
lines.addLines (fileContents);
|
||||
|
|
@ -129,22 +128,20 @@ void LocalisedStrings::loadFromText (const String& fileContents)
|
|||
static CriticalSection currentMappingsLock;
|
||||
static LocalisedStrings* currentMappings = 0;
|
||||
|
||||
void LocalisedStrings::setCurrentMappings (LocalisedStrings* newTranslations)
|
||||
void LocalisedStrings::setCurrentMappings (LocalisedStrings* newTranslations) throw()
|
||||
{
|
||||
const ScopedLock sl (currentMappingsLock);
|
||||
|
||||
if (currentMappings != 0)
|
||||
delete currentMappings;
|
||||
|
||||
delete currentMappings;
|
||||
currentMappings = newTranslations;
|
||||
}
|
||||
|
||||
LocalisedStrings* LocalisedStrings::getCurrentMappings()
|
||||
LocalisedStrings* LocalisedStrings::getCurrentMappings() throw()
|
||||
{
|
||||
return currentMappings;
|
||||
}
|
||||
|
||||
const String LocalisedStrings::translateWithCurrentMappings (const String& text)
|
||||
const String LocalisedStrings::translateWithCurrentMappings (const String& text) throw()
|
||||
{
|
||||
const ScopedLock sl (currentMappingsLock);
|
||||
|
||||
|
|
@ -154,4 +151,10 @@ const String LocalisedStrings::translateWithCurrentMappings (const String& text)
|
|||
return text;
|
||||
}
|
||||
|
||||
const String LocalisedStrings::translateWithCurrentMappings (const char* text) throw()
|
||||
{
|
||||
return translateWithCurrentMappings (String (text));
|
||||
}
|
||||
|
||||
|
||||
END_JUCE_NAMESPACE
|
||||
|
|
|
|||
|
|
@ -100,17 +100,17 @@ public:
|
|||
When you create one of these, you can call setCurrentMappings() to make it
|
||||
the set of mappings that the system's using.
|
||||
*/
|
||||
LocalisedStrings (const String& fileContents);
|
||||
LocalisedStrings (const String& fileContents) throw();
|
||||
|
||||
/** Creates a set of translations from a file.
|
||||
|
||||
When you create one of these, you can call setCurrentMappings() to make it
|
||||
the set of mappings that the system's using.
|
||||
*/
|
||||
LocalisedStrings (const File& fileToLoad);
|
||||
LocalisedStrings (const File& fileToLoad) throw();
|
||||
|
||||
/** Destructor. */
|
||||
~LocalisedStrings();
|
||||
~LocalisedStrings() throw();
|
||||
|
||||
//==============================================================================
|
||||
/** Selects the current set of mappings to be used by the system.
|
||||
|
|
@ -123,14 +123,14 @@ public:
|
|||
|
||||
@see translateWithCurrentMappings
|
||||
*/
|
||||
static void setCurrentMappings (LocalisedStrings* newTranslations);
|
||||
static void setCurrentMappings (LocalisedStrings* newTranslations) throw();
|
||||
|
||||
/** Returns the currently selected set of mappings.
|
||||
|
||||
This is the object that was last passed to setCurrentMappings(). It may
|
||||
be 0 if none has been created.
|
||||
*/
|
||||
static LocalisedStrings* getCurrentMappings();
|
||||
static LocalisedStrings* getCurrentMappings() throw();
|
||||
|
||||
/** Tries to translate a string using the currently selected set of mappings.
|
||||
|
||||
|
|
@ -141,15 +141,25 @@ public:
|
|||
|
||||
@see setCurrentMappings, getCurrentMappings
|
||||
*/
|
||||
static const String translateWithCurrentMappings (const String& text);
|
||||
static const String translateWithCurrentMappings (const String& text) throw();
|
||||
|
||||
/** Tries to translate a string using the currently selected set of mappings.
|
||||
|
||||
If no mapping has been set, or if the mapping doesn't contain a translation
|
||||
for the string, this will just return the original string.
|
||||
|
||||
See also the TRANS() macro, which uses this method to do its translation.
|
||||
|
||||
@see setCurrentMappings, getCurrentMappings
|
||||
*/
|
||||
static const String translateWithCurrentMappings (const char* text) throw();
|
||||
|
||||
//==============================================================================
|
||||
/** Attempts to look up a string and return its localised version.
|
||||
|
||||
If the string isn't found in the list, the original string will be returned.
|
||||
*/
|
||||
const String translate (const String& text) const;
|
||||
const String translate (const String& text) const throw();
|
||||
|
||||
/** Returns the name of the language specified in the translation file.
|
||||
|
||||
|
|
@ -179,7 +189,7 @@ private:
|
|||
StringArray countryCodes;
|
||||
StringPairArray translations;
|
||||
|
||||
void loadFromText (const String& fileContents);
|
||||
void loadFromText (const String& fileContents) throw();
|
||||
};
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1892,20 +1892,7 @@ const String String::toHexString (const int64 number) throw()
|
|||
|
||||
const String String::toHexString (const short number) throw()
|
||||
{
|
||||
tchar buffer[32];
|
||||
tchar* const end = buffer + 32;
|
||||
tchar* t = end;
|
||||
*--t = 0;
|
||||
unsigned short v = (unsigned short) number;
|
||||
|
||||
do
|
||||
{
|
||||
*--t = hexDigits [v & 15];
|
||||
v >>= 4;
|
||||
|
||||
} while (v != 0);
|
||||
|
||||
return String (t, (int) (((char*) end) - (char*) t));
|
||||
return toHexString ((int) (unsigned short) number);
|
||||
}
|
||||
|
||||
const String String::toHexString (const unsigned char* data,
|
||||
|
|
@ -2048,7 +2035,7 @@ const String String::createStringFromData (const void* const data_,
|
|||
}
|
||||
|
||||
//==============================================================================
|
||||
const char* String::toUTF8() const
|
||||
const char* String::toUTF8() const throw()
|
||||
{
|
||||
if (isEmpty())
|
||||
{
|
||||
|
|
@ -2074,7 +2061,7 @@ const char* String::toUTF8() const
|
|||
}
|
||||
}
|
||||
|
||||
int String::copyToUTF8 (uint8* buffer) const
|
||||
int String::copyToUTF8 (uint8* const buffer) const throw()
|
||||
{
|
||||
#if JUCE_STRINGS_ARE_UNICODE
|
||||
int num = 0, index = 0;
|
||||
|
|
@ -2141,7 +2128,7 @@ int String::copyToUTF8 (uint8* buffer) const
|
|||
#endif
|
||||
}
|
||||
|
||||
const String String::fromUTF8 (const uint8* buffer, int bufferSizeBytes)
|
||||
const String String::fromUTF8 (const uint8* const buffer, int bufferSizeBytes) throw()
|
||||
{
|
||||
if (buffer == 0)
|
||||
return empty;
|
||||
|
|
|
|||
|
|
@ -982,7 +982,7 @@ public:
|
|||
the method just returns the number of bytes required
|
||||
(including the terminating null character).
|
||||
*/
|
||||
int copyToUTF8 (uint8* destBuffer) const;
|
||||
int copyToUTF8 (uint8* const destBuffer) const throw();
|
||||
|
||||
/** Returns a pointer to a UTF-8 version of this string.
|
||||
|
||||
|
|
@ -990,13 +990,14 @@ public:
|
|||
that is returned must not be stored anywhere, as it can be deleted whenever the
|
||||
string changes.
|
||||
*/
|
||||
const char* toUTF8() const;
|
||||
const char* toUTF8() const throw();
|
||||
|
||||
/** Creates a String from a UTF-8 encoded buffer.
|
||||
|
||||
If the size is < 0, it'll keep reading until it hits a zero.
|
||||
*/
|
||||
static const String fromUTF8 (const uint8* utf8buffer, int bufferSizeBytes = -1);
|
||||
static const String fromUTF8 (const uint8* const utf8buffer,
|
||||
int bufferSizeBytes = -1) throw();
|
||||
|
||||
//==============================================================================
|
||||
/** Increases the string's internally allocated storage.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue