| @@ -10986,8 +10986,10 @@ int String::indexOfChar (const int startIndex, | |||||
| if (*t == character) | if (*t == character) | ||||
| return (int) (t - text); | return (int) (t - text); | ||||
| if (*t++ == 0) | |||||
| if (*t == 0) | |||||
| return -1; | return -1; | ||||
| ++t; | |||||
| } | } | ||||
| } | } | ||||
| @@ -11120,7 +11122,18 @@ bool String::contains (const juce_wchar* const other) const throw() | |||||
| bool String::containsChar (const juce_wchar character) const throw() | bool String::containsChar (const juce_wchar character) const throw() | ||||
| { | { | ||||
| return indexOfChar (character) >= 0; | |||||
| const juce_wchar* t = text; | |||||
| for (;;) | |||||
| { | |||||
| if (*t == character) | |||||
| return true; | |||||
| if (*t == 0) | |||||
| return false; | |||||
| ++t; | |||||
| } | |||||
| } | } | ||||
| bool String::containsIgnoreCase (const juce_wchar* const t) const throw() | bool String::containsIgnoreCase (const juce_wchar* const t) const throw() | ||||
| @@ -12653,7 +12666,6 @@ int StringArray::addTokens (const String& text, const String& breakCharacters, c | |||||
| { | { | ||||
| bool insideQuotes = false; | bool insideQuotes = false; | ||||
| juce_wchar currentQuoteChar = 0; | juce_wchar currentQuoteChar = 0; | ||||
| int i = 0; | int i = 0; | ||||
| int tokenStart = 0; | int tokenStart = 0; | ||||
| @@ -12661,35 +12673,11 @@ int StringArray::addTokens (const String& text, const String& breakCharacters, c | |||||
| { | { | ||||
| const juce_wchar c = text[i]; | const juce_wchar c = text[i]; | ||||
| bool isBreak = (c == 0); | |||||
| if (! (insideQuotes || isBreak)) | |||||
| { | |||||
| const juce_wchar* b = breakCharacters; | |||||
| while (*b != 0) | |||||
| { | |||||
| if (*b++ == c) | |||||
| { | |||||
| isBreak = true; | |||||
| break; | |||||
| } | |||||
| } | |||||
| } | |||||
| const bool isBreak = (c == 0) || ((! insideQuotes) && breakCharacters.containsChar (c)); | |||||
| if (! isBreak) | if (! isBreak) | ||||
| { | { | ||||
| bool isQuote = false; | |||||
| const juce_wchar* q = quoteCharacters; | |||||
| while (*q != 0) | |||||
| { | |||||
| if (*q++ == c) | |||||
| { | |||||
| isQuote = true; | |||||
| break; | |||||
| } | |||||
| } | |||||
| if (isQuote) | |||||
| if (quoteCharacters.containsChar (c)) | |||||
| { | { | ||||
| if (insideQuotes) | if (insideQuotes) | ||||
| { | { | ||||
| @@ -12789,9 +12777,11 @@ void StringArray::removeDuplicates (const bool ignoreCase) | |||||
| void StringArray::appendNumbersToDuplicates (const bool ignoreCase, | void StringArray::appendNumbersToDuplicates (const bool ignoreCase, | ||||
| const bool appendNumberToFirstInstance, | const bool appendNumberToFirstInstance, | ||||
| const tchar* const preNumberString, | |||||
| const tchar* const postNumberString) | |||||
| const juce_wchar* const preNumberString, | |||||
| const juce_wchar* const postNumberString) | |||||
| { | { | ||||
| jassert (preNumberString != 0 && postNumberString != 0); // These strings can't be null pointers.. | |||||
| for (int i = 0; i < size() - 1; ++i) | for (int i = 0; i < size() - 1; ++i) | ||||
| { | { | ||||
| String& s = strings.getReference(i); | String& s = strings.getReference(i); | ||||
| @@ -12830,30 +12820,30 @@ END_JUCE_NAMESPACE | |||||
| /*** Start of inlined file: juce_StringPairArray.cpp ***/ | /*** Start of inlined file: juce_StringPairArray.cpp ***/ | ||||
| BEGIN_JUCE_NAMESPACE | BEGIN_JUCE_NAMESPACE | ||||
| StringPairArray::StringPairArray (const bool ignoreCase_) throw() | |||||
| StringPairArray::StringPairArray (const bool ignoreCase_) | |||||
| : ignoreCase (ignoreCase_) | : ignoreCase (ignoreCase_) | ||||
| { | { | ||||
| } | } | ||||
| StringPairArray::StringPairArray (const StringPairArray& other) throw() | |||||
| StringPairArray::StringPairArray (const StringPairArray& other) | |||||
| : keys (other.keys), | : keys (other.keys), | ||||
| values (other.values), | values (other.values), | ||||
| ignoreCase (other.ignoreCase) | ignoreCase (other.ignoreCase) | ||||
| { | { | ||||
| } | } | ||||
| StringPairArray::~StringPairArray() throw() | |||||
| StringPairArray::~StringPairArray() | |||||
| { | { | ||||
| } | } | ||||
| StringPairArray& StringPairArray::operator= (const StringPairArray& other) throw() | |||||
| StringPairArray& StringPairArray::operator= (const StringPairArray& other) | |||||
| { | { | ||||
| keys = other.keys; | keys = other.keys; | ||||
| values = other.values; | values = other.values; | ||||
| return *this; | return *this; | ||||
| } | } | ||||
| bool StringPairArray::operator== (const StringPairArray& other) const throw() | |||||
| bool StringPairArray::operator== (const StringPairArray& other) const | |||||
| { | { | ||||
| for (int i = keys.size(); --i >= 0;) | for (int i = keys.size(); --i >= 0;) | ||||
| if (other [keys[i]] != values[i]) | if (other [keys[i]] != values[i]) | ||||
| @@ -12862,12 +12852,12 @@ bool StringPairArray::operator== (const StringPairArray& other) const throw() | |||||
| return true; | return true; | ||||
| } | } | ||||
| bool StringPairArray::operator!= (const StringPairArray& other) const throw() | |||||
| bool StringPairArray::operator!= (const StringPairArray& other) const | |||||
| { | { | ||||
| return ! operator== (other); | return ! operator== (other); | ||||
| } | } | ||||
| const String& StringPairArray::operator[] (const String& key) const throw() | |||||
| const String& StringPairArray::operator[] (const String& key) const | |||||
| { | { | ||||
| return values [keys.indexOf (key, ignoreCase)]; | return values [keys.indexOf (key, ignoreCase)]; | ||||
| } | } | ||||
| @@ -12882,8 +12872,7 @@ const String StringPairArray::getValue (const String& key, const String& default | |||||
| return defaultReturnValue; | return defaultReturnValue; | ||||
| } | } | ||||
| void StringPairArray::set (const String& key, | |||||
| const String& value) throw() | |||||
| void StringPairArray::set (const String& key, const String& value) | |||||
| { | { | ||||
| const int i = keys.indexOf (key, ignoreCase); | const int i = keys.indexOf (key, ignoreCase); | ||||
| @@ -12904,24 +12893,24 @@ void StringPairArray::addArray (const StringPairArray& other) | |||||
| set (other.keys[i], other.values[i]); | set (other.keys[i], other.values[i]); | ||||
| } | } | ||||
| void StringPairArray::clear() throw() | |||||
| void StringPairArray::clear() | |||||
| { | { | ||||
| keys.clear(); | keys.clear(); | ||||
| values.clear(); | values.clear(); | ||||
| } | } | ||||
| void StringPairArray::remove (const String& key) throw() | |||||
| void StringPairArray::remove (const String& key) | |||||
| { | { | ||||
| remove (keys.indexOf (key, ignoreCase)); | remove (keys.indexOf (key, ignoreCase)); | ||||
| } | } | ||||
| void StringPairArray::remove (const int index) throw() | |||||
| void StringPairArray::remove (const int index) | |||||
| { | { | ||||
| keys.remove (index); | keys.remove (index); | ||||
| values.remove (index); | values.remove (index); | ||||
| } | } | ||||
| void StringPairArray::setIgnoresCase (const bool shouldIgnoreCase) throw() | |||||
| void StringPairArray::setIgnoresCase (const bool shouldIgnoreCase) | |||||
| { | { | ||||
| ignoreCase = shouldIgnoreCase; | ignoreCase = shouldIgnoreCase; | ||||
| } | } | ||||
| @@ -12940,7 +12929,7 @@ const String StringPairArray::getDescription() const | |||||
| return s; | return s; | ||||
| } | } | ||||
| void StringPairArray::minimiseStorageOverheads() throw() | |||||
| void StringPairArray::minimiseStorageOverheads() | |||||
| { | { | ||||
| keys.minimiseStorageOverheads(); | keys.minimiseStorageOverheads(); | ||||
| values.minimiseStorageOverheads(); | values.minimiseStorageOverheads(); | ||||
| @@ -12953,7 +12942,7 @@ END_JUCE_NAMESPACE | |||||
| /*** Start of inlined file: juce_XmlDocument.cpp ***/ | /*** Start of inlined file: juce_XmlDocument.cpp ***/ | ||||
| BEGIN_JUCE_NAMESPACE | BEGIN_JUCE_NAMESPACE | ||||
| XmlDocument::XmlDocument (const String& documentText) throw() | |||||
| XmlDocument::XmlDocument (const String& documentText) | |||||
| : originalText (documentText), | : originalText (documentText), | ||||
| ignoreEmptyTextElements (true) | ignoreEmptyTextElements (true) | ||||
| { | { | ||||
| @@ -12964,7 +12953,7 @@ XmlDocument::XmlDocument (const File& file) | |||||
| inputSource = new FileInputSource (file); | inputSource = new FileInputSource (file); | ||||
| } | } | ||||
| XmlDocument::~XmlDocument() throw() | |||||
| XmlDocument::~XmlDocument() | |||||
| { | { | ||||
| } | } | ||||
| @@ -13061,7 +13050,7 @@ const String& XmlDocument::getLastParseError() const throw() | |||||
| return lastError; | return lastError; | ||||
| } | } | ||||
| void XmlDocument::setLastError (const String& desc, const bool carryOn) throw() | |||||
| void XmlDocument::setLastError (const String& desc, const bool carryOn) | |||||
| { | { | ||||
| lastError = desc; | lastError = desc; | ||||
| errorOccurred = ! carryOn; | errorOccurred = ! carryOn; | ||||
| @@ -13104,7 +13093,7 @@ int XmlDocument::findNextTokenLength() throw() | |||||
| return len; | return len; | ||||
| } | } | ||||
| void XmlDocument::skipHeader() throw() | |||||
| void XmlDocument::skipHeader() | |||||
| { | { | ||||
| const juce_wchar* const found = CharacterFunctions::find (input, T("<?xml")); | const juce_wchar* const found = CharacterFunctions::find (input, T("<?xml")); | ||||
| @@ -13146,7 +13135,7 @@ void XmlDocument::skipHeader() throw() | |||||
| dtdText = String (docType, (int) (input - (docType + 1))).trim(); | dtdText = String (docType, (int) (input - (docType + 1))).trim(); | ||||
| } | } | ||||
| void XmlDocument::skipNextWhiteSpace() throw() | |||||
| void XmlDocument::skipNextWhiteSpace() | |||||
| { | { | ||||
| for (;;) | for (;;) | ||||
| { | { | ||||
| @@ -13196,7 +13185,7 @@ void XmlDocument::skipNextWhiteSpace() throw() | |||||
| } | } | ||||
| } | } | ||||
| void XmlDocument::readQuotedString (String& result) throw() | |||||
| void XmlDocument::readQuotedString (String& result) | |||||
| { | { | ||||
| const juce_wchar quote = readNextChar(); | const juce_wchar quote = readNextChar(); | ||||
| @@ -13246,7 +13235,7 @@ void XmlDocument::readQuotedString (String& result) throw() | |||||
| } | } | ||||
| } | } | ||||
| XmlElement* XmlDocument::readNextElement (const bool alsoParseSubElements) throw() | |||||
| XmlElement* XmlDocument::readNextElement (const bool alsoParseSubElements) | |||||
| { | { | ||||
| XmlElement* node = 0; | XmlElement* node = 0; | ||||
| @@ -13355,7 +13344,7 @@ XmlElement* XmlDocument::readNextElement (const bool alsoParseSubElements) throw | |||||
| return node; | return node; | ||||
| } | } | ||||
| void XmlDocument::readChildElements (XmlElement* parent) throw() | |||||
| void XmlDocument::readChildElements (XmlElement* parent) | |||||
| { | { | ||||
| XmlElement* lastChildNode = 0; | XmlElement* lastChildNode = 0; | ||||
| @@ -13541,7 +13530,7 @@ void XmlDocument::readChildElements (XmlElement* parent) throw() | |||||
| } | } | ||||
| } | } | ||||
| void XmlDocument::readEntity (String& result) throw() | |||||
| void XmlDocument::readEntity (String& result) | |||||
| { | { | ||||
| // skip over the ampersand | // skip over the ampersand | ||||
| ++input; | ++input; | ||||
| @@ -13647,43 +13636,33 @@ void XmlDocument::readEntity (String& result) throw() | |||||
| const String XmlDocument::expandEntity (const String& ent) | const String XmlDocument::expandEntity (const String& ent) | ||||
| { | { | ||||
| if (ent.equalsIgnoreCase (T("amp"))) | if (ent.equalsIgnoreCase (T("amp"))) | ||||
| { | |||||
| return T("&"); | return T("&"); | ||||
| } | |||||
| else if (ent.equalsIgnoreCase (T("quot"))) | |||||
| { | |||||
| if (ent.equalsIgnoreCase (T("quot"))) | |||||
| return T("\""); | return T("\""); | ||||
| } | |||||
| else if (ent.equalsIgnoreCase (T("apos"))) | |||||
| { | |||||
| if (ent.equalsIgnoreCase (T("apos"))) | |||||
| return T("\'"); | return T("\'"); | ||||
| } | |||||
| else if (ent.equalsIgnoreCase (T("lt"))) | |||||
| { | |||||
| if (ent.equalsIgnoreCase (T("lt"))) | |||||
| return T("<"); | return T("<"); | ||||
| } | |||||
| else if (ent.equalsIgnoreCase (T("gt"))) | |||||
| { | |||||
| if (ent.equalsIgnoreCase (T("gt"))) | |||||
| return T(">"); | return T(">"); | ||||
| } | |||||
| else if (ent[0] == T('#')) | |||||
| if (ent[0] == T('#')) | |||||
| { | { | ||||
| if (ent[1] == T('x') || ent[1] == T('X')) | if (ent[1] == T('x') || ent[1] == T('X')) | ||||
| { | |||||
| return String::charToString (static_cast <juce_wchar> (ent.substring (2).getHexValue32())); | return String::charToString (static_cast <juce_wchar> (ent.substring (2).getHexValue32())); | ||||
| } | |||||
| else if (ent[1] >= T('0') && ent[1] <= T('9')) | |||||
| { | |||||
| if (ent[1] >= T('0') && ent[1] <= T('9')) | |||||
| return String::charToString (static_cast <juce_wchar> (ent.substring (1).getIntValue())); | return String::charToString (static_cast <juce_wchar> (ent.substring (1).getIntValue())); | ||||
| } | |||||
| setLastError ("illegal escape sequence", false); | setLastError ("illegal escape sequence", false); | ||||
| return T("&"); | return T("&"); | ||||
| } | } | ||||
| else | |||||
| { | |||||
| return expandExternalEntity (ent); | |||||
| } | |||||
| return expandExternalEntity (ent); | |||||
| } | } | ||||
| const String XmlDocument::expandExternalEntity (const String& entity) | const String XmlDocument::expandExternalEntity (const String& entity) | ||||
| @@ -13833,8 +13812,7 @@ XmlElement::XmlAttributeNode::XmlAttributeNode (const XmlAttributeNode& other) t | |||||
| { | { | ||||
| } | } | ||||
| XmlElement::XmlAttributeNode::XmlAttributeNode (const String& name_, | |||||
| const String& value_) throw() | |||||
| XmlElement::XmlAttributeNode::XmlAttributeNode (const String& name_, const String& value_) throw() | |||||
| : name (name_), | : name (name_), | ||||
| value (value_), | value (value_), | ||||
| next (0) | next (0) | ||||
| @@ -14157,24 +14135,11 @@ void XmlElement::writeToStream (OutputStream& output, | |||||
| const int lineWrapLength) const | const int lineWrapLength) const | ||||
| { | { | ||||
| if (includeXmlHeader) | if (includeXmlHeader) | ||||
| { | |||||
| output << "<?xml version=\"1.0\" encoding=\"" << encodingType; | |||||
| if (allOnOneLine) | |||||
| output << "\"?> "; | |||||
| else | |||||
| output << "\"?>\r\n\r\n"; | |||||
| } | |||||
| output << "<?xml version=\"1.0\" encoding=\"" << encodingType | |||||
| << (allOnOneLine ? "\"?> " : "\"?>\r\n\r\n"); | |||||
| if (dtdToUse.isNotEmpty()) | if (dtdToUse.isNotEmpty()) | ||||
| { | |||||
| output << dtdToUse; | |||||
| if (allOnOneLine) | |||||
| output << " "; | |||||
| else | |||||
| output << "\r\n"; | |||||
| } | |||||
| output << dtdToUse << (allOnOneLine ? " " : "\r\n"); | |||||
| writeElementAsText (output, allOnOneLine ? -1 : 0, lineWrapLength); | writeElementAsText (output, allOnOneLine ? -1 : 0, lineWrapLength); | ||||
| } | } | ||||
| @@ -3866,12 +3866,6 @@ private: | |||||
| #ifndef __JUCE_STRINGARRAY_JUCEHEADER__ | #ifndef __JUCE_STRINGARRAY_JUCEHEADER__ | ||||
| #define __JUCE_STRINGARRAY_JUCEHEADER__ | #define __JUCE_STRINGARRAY_JUCEHEADER__ | ||||
| #ifndef DOXYGEN | |||||
| // (used in StringArray::appendNumbersToDuplicates) | |||||
| static const tchar* const defaultPreNumberString = JUCE_T(" ("); | |||||
| static const tchar* const defaultPostNumberString = JUCE_T(")"); | |||||
| #endif | |||||
| class JUCE_API StringArray | class JUCE_API StringArray | ||||
| { | { | ||||
| public: | public: | ||||
| @@ -3880,15 +3874,13 @@ public: | |||||
| StringArray (const StringArray& other); | StringArray (const StringArray& other); | ||||
| StringArray (const juce_wchar** const strings, | |||||
| const int numberOfStrings); | |||||
| StringArray (const juce_wchar** strings, int numberOfStrings); | |||||
| StringArray (const char** const strings, | |||||
| const int numberOfStrings); | |||||
| StringArray (const char** strings, int numberOfStrings); | |||||
| explicit StringArray (const juce_wchar** const strings); | |||||
| explicit StringArray (const juce_wchar** strings); | |||||
| explicit StringArray (const char** const strings); | |||||
| explicit StringArray (const char** strings); | |||||
| ~StringArray(); | ~StringArray(); | ||||
| @@ -3903,26 +3895,26 @@ public: | |||||
| const String& operator[] (const int index) const throw(); | const String& operator[] (const int index) const throw(); | ||||
| bool contains (const String& stringToLookFor, | bool contains (const String& stringToLookFor, | ||||
| const bool ignoreCase = false) const; | |||||
| bool ignoreCase = false) const; | |||||
| int indexOf (const String& stringToLookFor, | int indexOf (const String& stringToLookFor, | ||||
| const bool ignoreCase = false, | |||||
| bool ignoreCase = false, | |||||
| int startIndex = 0) const; | int startIndex = 0) const; | ||||
| void add (const String& stringToAdd); | void add (const String& stringToAdd); | ||||
| void insert (const int index, const String& stringToAdd); | |||||
| void insert (int index, const String& stringToAdd); | |||||
| void addIfNotAlreadyThere (const String& stringToAdd, const bool ignoreCase = false); | |||||
| void addIfNotAlreadyThere (const String& stringToAdd, bool ignoreCase = false); | |||||
| void set (const int index, const String& newString); | |||||
| void set (int index, const String& newString); | |||||
| void addArray (const StringArray& other, | void addArray (const StringArray& other, | ||||
| int startIndex = 0, | int startIndex = 0, | ||||
| int numElementsToAdd = -1); | int numElementsToAdd = -1); | ||||
| int addTokens (const String& stringToTokenise, | int addTokens (const String& stringToTokenise, | ||||
| const bool preserveQuotedStrings); | |||||
| bool preserveQuotedStrings); | |||||
| int addTokens (const String& stringToTokenise, | int addTokens (const String& stringToTokenise, | ||||
| const String& breakCharacters, | const String& breakCharacters, | ||||
| @@ -3932,29 +3924,29 @@ public: | |||||
| void clear(); | void clear(); | ||||
| void remove (const int index); | |||||
| void remove (int index); | |||||
| void removeString (const String& stringToRemove, | void removeString (const String& stringToRemove, | ||||
| const bool ignoreCase = false); | |||||
| bool ignoreCase = false); | |||||
| void removeDuplicates (const bool ignoreCase); | |||||
| void removeDuplicates (bool ignoreCase); | |||||
| void removeEmptyStrings (const bool removeWhitespaceStrings = true); | |||||
| void removeEmptyStrings (bool removeWhitespaceStrings = true); | |||||
| void move (const int currentIndex, int newIndex) throw(); | |||||
| void move (int currentIndex, int newIndex) throw(); | |||||
| void trim(); | void trim(); | ||||
| void appendNumbersToDuplicates (const bool ignoreCaseWhenComparing, | |||||
| const bool appendNumberToFirstInstance, | |||||
| const tchar* const preNumberString = defaultPreNumberString, | |||||
| const tchar* const postNumberString = defaultPostNumberString); | |||||
| void appendNumbersToDuplicates (bool ignoreCaseWhenComparing, | |||||
| bool appendNumberToFirstInstance, | |||||
| const juce_wchar* preNumberString = JUCE_T(" ("), | |||||
| const juce_wchar* postNumberString = JUCE_T(")")); | |||||
| const String joinIntoString (const String& separatorString, | const String joinIntoString (const String& separatorString, | ||||
| int startIndex = 0, | int startIndex = 0, | ||||
| int numberOfElements = -1) const; | int numberOfElements = -1) const; | ||||
| void sort (const bool ignoreCase); | |||||
| void sort (bool ignoreCase); | |||||
| void minimiseStorageOverheads(); | void minimiseStorageOverheads(); | ||||
| @@ -3971,19 +3963,19 @@ class JUCE_API StringPairArray | |||||
| { | { | ||||
| public: | public: | ||||
| StringPairArray (const bool ignoreCaseWhenComparingKeys = true) throw(); | |||||
| StringPairArray (bool ignoreCaseWhenComparingKeys = true); | |||||
| StringPairArray (const StringPairArray& other) throw(); | |||||
| StringPairArray (const StringPairArray& other); | |||||
| ~StringPairArray() throw(); | |||||
| ~StringPairArray(); | |||||
| StringPairArray& operator= (const StringPairArray& other) throw(); | |||||
| StringPairArray& operator= (const StringPairArray& other); | |||||
| bool operator== (const StringPairArray& other) const throw(); | |||||
| bool operator== (const StringPairArray& other) const; | |||||
| bool operator!= (const StringPairArray& other) const throw(); | |||||
| bool operator!= (const StringPairArray& other) const; | |||||
| const String& operator[] (const String& key) const throw(); | |||||
| const String& operator[] (const String& key) const; | |||||
| const String getValue (const String& key, const String& defaultReturnValue) const; | const String getValue (const String& key, const String& defaultReturnValue) const; | ||||
| @@ -3993,22 +3985,21 @@ public: | |||||
| inline int size() const throw() { return keys.size(); }; | inline int size() const throw() { return keys.size(); }; | ||||
| void set (const String& key, | |||||
| const String& value) throw(); | |||||
| void set (const String& key, const String& value); | |||||
| void addArray (const StringPairArray& other); | void addArray (const StringPairArray& other); | ||||
| void clear() throw(); | |||||
| void clear(); | |||||
| void remove (const String& key) throw(); | |||||
| void remove (const String& key); | |||||
| void remove (const int index) throw(); | |||||
| void remove (int index); | |||||
| void setIgnoresCase (const bool shouldIgnoreCase) throw(); | |||||
| void setIgnoresCase (bool shouldIgnoreCase); | |||||
| const String getDescription() const; | const String getDescription() const; | ||||
| void minimiseStorageOverheads() throw(); | |||||
| void minimiseStorageOverheads(); | |||||
| juce_UseDebuggingNewOperator | juce_UseDebuggingNewOperator | ||||
| @@ -4479,26 +4470,26 @@ public: | |||||
| ~XmlElement() throw(); | ~XmlElement() throw(); | ||||
| bool isEquivalentTo (const XmlElement* const other, | |||||
| const bool ignoreOrderOfAttributes) const throw(); | |||||
| bool isEquivalentTo (const XmlElement* other, | |||||
| bool ignoreOrderOfAttributes) const throw(); | |||||
| const String createDocument (const String& dtdToUse, | const String createDocument (const String& dtdToUse, | ||||
| const bool allOnOneLine = false, | |||||
| const bool includeXmlHeader = true, | |||||
| bool allOnOneLine = false, | |||||
| bool includeXmlHeader = true, | |||||
| const String& encodingType = JUCE_T("UTF-8"), | const String& encodingType = JUCE_T("UTF-8"), | ||||
| const int lineWrapLength = 60) const; | |||||
| int lineWrapLength = 60) const; | |||||
| void writeToStream (OutputStream& output, | void writeToStream (OutputStream& output, | ||||
| const String& dtdToUse, | const String& dtdToUse, | ||||
| const bool allOnOneLine = false, | |||||
| const bool includeXmlHeader = true, | |||||
| bool allOnOneLine = false, | |||||
| bool includeXmlHeader = true, | |||||
| const String& encodingType = JUCE_T("UTF-8"), | const String& encodingType = JUCE_T("UTF-8"), | ||||
| const int lineWrapLength = 60) const; | |||||
| int lineWrapLength = 60) const; | |||||
| bool writeToFile (const File& destinationFile, | bool writeToFile (const File& destinationFile, | ||||
| const String& dtdToUse, | const String& dtdToUse, | ||||
| const String& encodingType = JUCE_T("UTF-8"), | const String& encodingType = JUCE_T("UTF-8"), | ||||
| const int lineWrapLength = 60) const; | |||||
| int lineWrapLength = 60) const; | |||||
| inline const String& getTagName() const throw() { return tagName; } | inline const String& getTagName() const throw() { return tagName; } | ||||
| @@ -4506,9 +4497,9 @@ public: | |||||
| int getNumAttributes() const throw(); | int getNumAttributes() const throw(); | ||||
| const String& getAttributeName (const int attributeIndex) const throw(); | |||||
| const String& getAttributeName (int attributeIndex) const throw(); | |||||
| const String& getAttributeValue (const int attributeIndex) const throw(); | |||||
| const String& getAttributeValue (int attributeIndex) const throw(); | |||||
| // Attribute-handling methods.. | // Attribute-handling methods.. | ||||
| @@ -4521,25 +4512,25 @@ public: | |||||
| bool compareAttribute (const String& attributeName, | bool compareAttribute (const String& attributeName, | ||||
| const String& stringToCompareAgainst, | const String& stringToCompareAgainst, | ||||
| const bool ignoreCase = false) const throw(); | |||||
| bool ignoreCase = false) const throw(); | |||||
| int getIntAttribute (const String& attributeName, | int getIntAttribute (const String& attributeName, | ||||
| const int defaultReturnValue = 0) const; | |||||
| int defaultReturnValue = 0) const; | |||||
| double getDoubleAttribute (const String& attributeName, | double getDoubleAttribute (const String& attributeName, | ||||
| const double defaultReturnValue = 0.0) const; | |||||
| double defaultReturnValue = 0.0) const; | |||||
| bool getBoolAttribute (const String& attributeName, | bool getBoolAttribute (const String& attributeName, | ||||
| const bool defaultReturnValue = false) const; | |||||
| bool defaultReturnValue = false) const; | |||||
| void setAttribute (const String& attributeName, | void setAttribute (const String& attributeName, | ||||
| const String& newValue); | const String& newValue); | ||||
| void setAttribute (const String& attributeName, | void setAttribute (const String& attributeName, | ||||
| const int newValue); | |||||
| int newValue); | |||||
| void setAttribute (const String& attributeName, | void setAttribute (const String& attributeName, | ||||
| const double newValue); | |||||
| double newValue); | |||||
| void removeAttribute (const String& attributeName) throw(); | void removeAttribute (const String& attributeName) throw(); | ||||
| @@ -4555,22 +4546,22 @@ public: | |||||
| int getNumChildElements() const throw(); | int getNumChildElements() const throw(); | ||||
| XmlElement* getChildElement (const int index) const throw(); | |||||
| XmlElement* getChildElement (int index) const throw(); | |||||
| XmlElement* getChildByName (const String& tagNameToLookFor) const throw(); | XmlElement* getChildByName (const String& tagNameToLookFor) const throw(); | ||||
| void addChildElement (XmlElement* const newChildElement) throw(); | void addChildElement (XmlElement* const newChildElement) throw(); | ||||
| void insertChildElement (XmlElement* const newChildNode, | |||||
| void insertChildElement (XmlElement* newChildNode, | |||||
| int indexToInsertAt) throw(); | int indexToInsertAt) throw(); | ||||
| XmlElement* createNewChildElement (const String& tagName); | XmlElement* createNewChildElement (const String& tagName); | ||||
| bool replaceChildElement (XmlElement* const currentChildElement, | |||||
| XmlElement* const newChildNode) throw(); | |||||
| bool replaceChildElement (XmlElement* currentChildElement, | |||||
| XmlElement* newChildNode) throw(); | |||||
| void removeChildElement (XmlElement* const childToRemove, | |||||
| const bool shouldDeleteTheChild) throw(); | |||||
| void removeChildElement (XmlElement* childToRemove, | |||||
| bool shouldDeleteTheChild) throw(); | |||||
| void deleteAllChildElements() throw(); | void deleteAllChildElements() throw(); | ||||
| @@ -4578,7 +4569,7 @@ public: | |||||
| bool containsChildElement (const XmlElement* const possibleChild) const throw(); | bool containsChildElement (const XmlElement* const possibleChild) const throw(); | ||||
| XmlElement* findParentElementOf (const XmlElement* const elementToLookFor) throw(); | |||||
| XmlElement* findParentElementOf (const XmlElement* elementToLookFor) throw(); | |||||
| template <class ElementComparator> | template <class ElementComparator> | ||||
| void sortChildElements (ElementComparator& comparator, | void sortChildElements (ElementComparator& comparator, | ||||
| @@ -4635,14 +4626,9 @@ private: | |||||
| XmlAttributeNode* attributes; | XmlAttributeNode* attributes; | ||||
| XmlElement (int) throw(); // for internal use | |||||
| XmlElement (int) throw(); | |||||
| void copyChildrenAndAttributesFrom (const XmlElement& other) throw(); | void copyChildrenAndAttributesFrom (const XmlElement& other) throw(); | ||||
| void writeElementAsText (OutputStream& out, | |||||
| const int indentationLevel, | |||||
| const int lineWrapLength) const; | |||||
| void writeElementAsText (OutputStream& out, int indentationLevel, int lineWrapLength) const; | |||||
| void getChildElementsAsArray (XmlElement**) const throw(); | void getChildElementsAsArray (XmlElement**) const throw(); | ||||
| void reorderChildElements (XmlElement** const, const int) throw(); | void reorderChildElements (XmlElement** const, const int) throw(); | ||||
| }; | }; | ||||
| @@ -8527,11 +8513,11 @@ class JUCE_API XmlDocument | |||||
| { | { | ||||
| public: | public: | ||||
| XmlDocument (const String& documentText) throw(); | |||||
| XmlDocument (const String& documentText); | |||||
| XmlDocument (const File& file); | XmlDocument (const File& file); | ||||
| ~XmlDocument() throw(); | |||||
| ~XmlDocument(); | |||||
| XmlElement* getDocumentElement (const bool onlyReadOuterDocumentElement = false); | XmlElement* getDocumentElement (const bool onlyReadOuterDocumentElement = false); | ||||
| @@ -8554,15 +8540,15 @@ private: | |||||
| bool needToLoadDTD, ignoreEmptyTextElements; | bool needToLoadDTD, ignoreEmptyTextElements; | ||||
| ScopedPointer <InputSource> inputSource; | ScopedPointer <InputSource> inputSource; | ||||
| void setLastError (const String& desc, const bool carryOn) throw(); | |||||
| void skipHeader() throw(); | |||||
| void skipNextWhiteSpace() throw(); | |||||
| void setLastError (const String& desc, const bool carryOn); | |||||
| void skipHeader(); | |||||
| void skipNextWhiteSpace(); | |||||
| juce_wchar readNextChar() throw(); | juce_wchar readNextChar() throw(); | ||||
| XmlElement* readNextElement (const bool alsoParseSubElements) throw(); | |||||
| void readChildElements (XmlElement* parent) throw(); | |||||
| XmlElement* readNextElement (const bool alsoParseSubElements); | |||||
| void readChildElements (XmlElement* parent); | |||||
| int findNextTokenLength() throw(); | int findNextTokenLength() throw(); | ||||
| void readQuotedString (String& result) throw(); | |||||
| void readEntity (String& result) throw(); | |||||
| void readQuotedString (String& result); | |||||
| void readEntity (String& result); | |||||
| static bool isXmlIdentifierCharSlow (juce_wchar c) throw(); | static bool isXmlIdentifierCharSlow (juce_wchar c) throw(); | ||||
| bool isXmlIdentifierChar (juce_wchar c) const throw(); | bool isXmlIdentifierChar (juce_wchar c) const throw(); | ||||
| @@ -825,8 +825,10 @@ int String::indexOfChar (const int startIndex, | |||||
| if (*t == character) | if (*t == character) | ||||
| return (int) (t - text); | return (int) (t - text); | ||||
| if (*t++ == 0) | |||||
| if (*t == 0) | |||||
| return -1; | return -1; | ||||
| ++t; | |||||
| } | } | ||||
| } | } | ||||
| @@ -959,7 +961,18 @@ bool String::contains (const juce_wchar* const other) const throw() | |||||
| bool String::containsChar (const juce_wchar character) const throw() | bool String::containsChar (const juce_wchar character) const throw() | ||||
| { | { | ||||
| return indexOfChar (character) >= 0; | |||||
| const juce_wchar* t = text; | |||||
| for (;;) | |||||
| { | |||||
| if (*t == character) | |||||
| return true; | |||||
| if (*t == 0) | |||||
| return false; | |||||
| ++t; | |||||
| } | |||||
| } | } | ||||
| bool String::containsIgnoreCase (const juce_wchar* const t) const throw() | bool String::containsIgnoreCase (const juce_wchar* const t) const throw() | ||||
| @@ -340,7 +340,6 @@ int StringArray::addTokens (const String& text, const String& breakCharacters, c | |||||
| { | { | ||||
| bool insideQuotes = false; | bool insideQuotes = false; | ||||
| juce_wchar currentQuoteChar = 0; | juce_wchar currentQuoteChar = 0; | ||||
| int i = 0; | int i = 0; | ||||
| int tokenStart = 0; | int tokenStart = 0; | ||||
| @@ -348,35 +347,11 @@ int StringArray::addTokens (const String& text, const String& breakCharacters, c | |||||
| { | { | ||||
| const juce_wchar c = text[i]; | const juce_wchar c = text[i]; | ||||
| bool isBreak = (c == 0); | |||||
| if (! (insideQuotes || isBreak)) | |||||
| { | |||||
| const juce_wchar* b = breakCharacters; | |||||
| while (*b != 0) | |||||
| { | |||||
| if (*b++ == c) | |||||
| { | |||||
| isBreak = true; | |||||
| break; | |||||
| } | |||||
| } | |||||
| } | |||||
| const bool isBreak = (c == 0) || ((! insideQuotes) && breakCharacters.containsChar (c)); | |||||
| if (! isBreak) | if (! isBreak) | ||||
| { | { | ||||
| bool isQuote = false; | |||||
| const juce_wchar* q = quoteCharacters; | |||||
| while (*q != 0) | |||||
| { | |||||
| if (*q++ == c) | |||||
| { | |||||
| isQuote = true; | |||||
| break; | |||||
| } | |||||
| } | |||||
| if (isQuote) | |||||
| if (quoteCharacters.containsChar (c)) | |||||
| { | { | ||||
| if (insideQuotes) | if (insideQuotes) | ||||
| { | { | ||||
| @@ -477,9 +452,11 @@ void StringArray::removeDuplicates (const bool ignoreCase) | |||||
| void StringArray::appendNumbersToDuplicates (const bool ignoreCase, | void StringArray::appendNumbersToDuplicates (const bool ignoreCase, | ||||
| const bool appendNumberToFirstInstance, | const bool appendNumberToFirstInstance, | ||||
| const tchar* const preNumberString, | |||||
| const tchar* const postNumberString) | |||||
| const juce_wchar* const preNumberString, | |||||
| const juce_wchar* const postNumberString) | |||||
| { | { | ||||
| jassert (preNumberString != 0 && postNumberString != 0); // These strings can't be null pointers.. | |||||
| for (int i = 0; i < size() - 1; ++i) | for (int i = 0; i < size() - 1; ++i) | ||||
| { | { | ||||
| String& s = strings.getReference(i); | String& s = strings.getReference(i); | ||||
| @@ -29,12 +29,6 @@ | |||||
| #include "juce_String.h" | #include "juce_String.h" | ||||
| #include "../containers/juce_Array.h" | #include "../containers/juce_Array.h" | ||||
| #ifndef DOXYGEN | |||||
| // (used in StringArray::appendNumbersToDuplicates) | |||||
| static const tchar* const defaultPreNumberString = JUCE_T(" ("); | |||||
| static const tchar* const defaultPostNumberString = JUCE_T(")"); | |||||
| #endif | |||||
| //============================================================================== | //============================================================================== | ||||
| /** | /** | ||||
| @@ -58,8 +52,7 @@ public: | |||||
| treated as empty strings | treated as empty strings | ||||
| @param numberOfStrings how many items there are in the array | @param numberOfStrings how many items there are in the array | ||||
| */ | */ | ||||
| StringArray (const juce_wchar** const strings, | |||||
| const int numberOfStrings); | |||||
| StringArray (const juce_wchar** strings, int numberOfStrings); | |||||
| /** Creates a copy of an array of string literals. | /** Creates a copy of an array of string literals. | ||||
| @@ -67,22 +60,21 @@ public: | |||||
| treated as empty strings | treated as empty strings | ||||
| @param numberOfStrings how many items there are in the array | @param numberOfStrings how many items there are in the array | ||||
| */ | */ | ||||
| StringArray (const char** const strings, | |||||
| const int numberOfStrings); | |||||
| StringArray (const char** strings, int numberOfStrings); | |||||
| /** Creates a copy of a null-terminated array of string literals. | /** Creates a copy of a null-terminated array of string literals. | ||||
| Each item from the array passed-in is added, until it encounters a null pointer, | Each item from the array passed-in is added, until it encounters a null pointer, | ||||
| at which point it stops. | at which point it stops. | ||||
| */ | */ | ||||
| explicit StringArray (const juce_wchar** const strings); | |||||
| explicit StringArray (const juce_wchar** strings); | |||||
| /** Creates a copy of a null-terminated array of string literals. | /** Creates a copy of a null-terminated array of string literals. | ||||
| Each item from the array passed-in is added, until it encounters a null pointer, | Each item from the array passed-in is added, until it encounters a null pointer, | ||||
| at which point it stops. | at which point it stops. | ||||
| */ | */ | ||||
| explicit StringArray (const char** const strings); | |||||
| explicit StringArray (const char** strings); | |||||
| /** Destructor. */ | /** Destructor. */ | ||||
| ~StringArray(); | ~StringArray(); | ||||
| @@ -127,7 +119,7 @@ public: | |||||
| @returns true if the string is found inside the array | @returns true if the string is found inside the array | ||||
| */ | */ | ||||
| bool contains (const String& stringToLookFor, | bool contains (const String& stringToLookFor, | ||||
| const bool ignoreCase = false) const; | |||||
| bool ignoreCase = false) const; | |||||
| /** Searches for a string in the array. | /** Searches for a string in the array. | ||||
| @@ -140,7 +132,7 @@ public: | |||||
| or -1 if it isn't found. | or -1 if it isn't found. | ||||
| */ | */ | ||||
| int indexOf (const String& stringToLookFor, | int indexOf (const String& stringToLookFor, | ||||
| const bool ignoreCase = false, | |||||
| bool ignoreCase = false, | |||||
| int startIndex = 0) const; | int startIndex = 0) const; | ||||
| //============================================================================== | //============================================================================== | ||||
| @@ -154,20 +146,20 @@ public: | |||||
| If the index is less than zero or greater than the size of the array, | If the index is less than zero or greater than the size of the array, | ||||
| the new string will be added to the end of the array. | the new string will be added to the end of the array. | ||||
| */ | */ | ||||
| void insert (const int index, const String& stringToAdd); | |||||
| void insert (int index, const String& stringToAdd); | |||||
| /** Adds a string to the array as long as it's not already in there. | /** Adds a string to the array as long as it's not already in there. | ||||
| The search can optionally be case-insensitive. | The search can optionally be case-insensitive. | ||||
| */ | */ | ||||
| void addIfNotAlreadyThere (const String& stringToAdd, const bool ignoreCase = false); | |||||
| void addIfNotAlreadyThere (const String& stringToAdd, bool ignoreCase = false); | |||||
| /** Replaces one of the strings in the array with another one. | /** Replaces one of the strings in the array with another one. | ||||
| If the index is higher than the array's size, the new string will be | If the index is higher than the array's size, the new string will be | ||||
| added to the end of the array; if it's less than zero nothing happens. | added to the end of the array; if it's less than zero nothing happens. | ||||
| */ | */ | ||||
| void set (const int index, const String& newString); | |||||
| void set (int index, const String& newString); | |||||
| /** Appends some strings from another array to the end of this one. | /** Appends some strings from another array to the end of this one. | ||||
| @@ -188,7 +180,7 @@ public: | |||||
| @returns the number of tokens added | @returns the number of tokens added | ||||
| */ | */ | ||||
| int addTokens (const String& stringToTokenise, | int addTokens (const String& stringToTokenise, | ||||
| const bool preserveQuotedStrings); | |||||
| bool preserveQuotedStrings); | |||||
| /** Breaks up a string into tokens and adds them to this array. | /** Breaks up a string into tokens and adds them to this array. | ||||
| @@ -223,7 +215,7 @@ public: | |||||
| If the index is out-of-range, no action will be taken. | If the index is out-of-range, no action will be taken. | ||||
| */ | */ | ||||
| void remove (const int index); | |||||
| void remove (int index); | |||||
| /** Finds a string in the array and removes it. | /** Finds a string in the array and removes it. | ||||
| @@ -231,7 +223,7 @@ public: | |||||
| comparison may be case-insensitive depending on the ignoreCase parameter. | comparison may be case-insensitive depending on the ignoreCase parameter. | ||||
| */ | */ | ||||
| void removeString (const String& stringToRemove, | void removeString (const String& stringToRemove, | ||||
| const bool ignoreCase = false); | |||||
| bool ignoreCase = false); | |||||
| /** Removes any duplicated elements from the array. | /** Removes any duplicated elements from the array. | ||||
| @@ -240,14 +232,14 @@ public: | |||||
| @param ignoreCase whether to use a case-insensitive comparison | @param ignoreCase whether to use a case-insensitive comparison | ||||
| */ | */ | ||||
| void removeDuplicates (const bool ignoreCase); | |||||
| void removeDuplicates (bool ignoreCase); | |||||
| /** Removes empty strings from the array. | /** Removes empty strings from the array. | ||||
| @param removeWhitespaceStrings if true, strings that only contain whitespace | @param removeWhitespaceStrings if true, strings that only contain whitespace | ||||
| characters will also be removed | characters will also be removed | ||||
| */ | */ | ||||
| void removeEmptyStrings (const bool removeWhitespaceStrings = true); | |||||
| void removeEmptyStrings (bool removeWhitespaceStrings = true); | |||||
| /** Moves one of the strings to a different position. | /** Moves one of the strings to a different position. | ||||
| @@ -263,7 +255,7 @@ public: | |||||
| is less than zero, the value will be moved to the end | is less than zero, the value will be moved to the end | ||||
| of the array | of the array | ||||
| */ | */ | ||||
| void move (const int currentIndex, int newIndex) throw(); | |||||
| void move (int currentIndex, int newIndex) throw(); | |||||
| /** Deletes any whitespace characters from the starts and ends of all the strings. */ | /** Deletes any whitespace characters from the starts and ends of all the strings. */ | ||||
| void trim(); | void trim(); | ||||
| @@ -279,10 +271,10 @@ public: | |||||
| @param preNumberString when adding a number, this string is added before the number | @param preNumberString when adding a number, this string is added before the number | ||||
| @param postNumberString this string is appended after any numbers that are added | @param postNumberString this string is appended after any numbers that are added | ||||
| */ | */ | ||||
| void appendNumbersToDuplicates (const bool ignoreCaseWhenComparing, | |||||
| const bool appendNumberToFirstInstance, | |||||
| const tchar* const preNumberString = defaultPreNumberString, | |||||
| const tchar* const postNumberString = defaultPostNumberString); | |||||
| void appendNumbersToDuplicates (bool ignoreCaseWhenComparing, | |||||
| bool appendNumberToFirstInstance, | |||||
| const juce_wchar* preNumberString = JUCE_T(" ("), | |||||
| const juce_wchar* postNumberString = JUCE_T(")")); | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Joins the strings in the array together into one string. | /** Joins the strings in the array together into one string. | ||||
| @@ -306,7 +298,7 @@ public: | |||||
| @param ignoreCase if true, the comparisons used will be case-sensitive. | @param ignoreCase if true, the comparisons used will be case-sensitive. | ||||
| */ | */ | ||||
| void sort (const bool ignoreCase); | |||||
| void sort (bool ignoreCase); | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Reduces the amount of storage being used by the array. | /** Reduces the amount of storage being used by the array. | ||||
| @@ -32,30 +32,30 @@ BEGIN_JUCE_NAMESPACE | |||||
| //============================================================================== | //============================================================================== | ||||
| StringPairArray::StringPairArray (const bool ignoreCase_) throw() | |||||
| StringPairArray::StringPairArray (const bool ignoreCase_) | |||||
| : ignoreCase (ignoreCase_) | : ignoreCase (ignoreCase_) | ||||
| { | { | ||||
| } | } | ||||
| StringPairArray::StringPairArray (const StringPairArray& other) throw() | |||||
| StringPairArray::StringPairArray (const StringPairArray& other) | |||||
| : keys (other.keys), | : keys (other.keys), | ||||
| values (other.values), | values (other.values), | ||||
| ignoreCase (other.ignoreCase) | ignoreCase (other.ignoreCase) | ||||
| { | { | ||||
| } | } | ||||
| StringPairArray::~StringPairArray() throw() | |||||
| StringPairArray::~StringPairArray() | |||||
| { | { | ||||
| } | } | ||||
| StringPairArray& StringPairArray::operator= (const StringPairArray& other) throw() | |||||
| StringPairArray& StringPairArray::operator= (const StringPairArray& other) | |||||
| { | { | ||||
| keys = other.keys; | keys = other.keys; | ||||
| values = other.values; | values = other.values; | ||||
| return *this; | return *this; | ||||
| } | } | ||||
| bool StringPairArray::operator== (const StringPairArray& other) const throw() | |||||
| bool StringPairArray::operator== (const StringPairArray& other) const | |||||
| { | { | ||||
| for (int i = keys.size(); --i >= 0;) | for (int i = keys.size(); --i >= 0;) | ||||
| if (other [keys[i]] != values[i]) | if (other [keys[i]] != values[i]) | ||||
| @@ -64,12 +64,12 @@ bool StringPairArray::operator== (const StringPairArray& other) const throw() | |||||
| return true; | return true; | ||||
| } | } | ||||
| bool StringPairArray::operator!= (const StringPairArray& other) const throw() | |||||
| bool StringPairArray::operator!= (const StringPairArray& other) const | |||||
| { | { | ||||
| return ! operator== (other); | return ! operator== (other); | ||||
| } | } | ||||
| const String& StringPairArray::operator[] (const String& key) const throw() | |||||
| const String& StringPairArray::operator[] (const String& key) const | |||||
| { | { | ||||
| return values [keys.indexOf (key, ignoreCase)]; | return values [keys.indexOf (key, ignoreCase)]; | ||||
| } | } | ||||
| @@ -84,8 +84,7 @@ const String StringPairArray::getValue (const String& key, const String& default | |||||
| return defaultReturnValue; | return defaultReturnValue; | ||||
| } | } | ||||
| void StringPairArray::set (const String& key, | |||||
| const String& value) throw() | |||||
| void StringPairArray::set (const String& key, const String& value) | |||||
| { | { | ||||
| const int i = keys.indexOf (key, ignoreCase); | const int i = keys.indexOf (key, ignoreCase); | ||||
| @@ -106,24 +105,24 @@ void StringPairArray::addArray (const StringPairArray& other) | |||||
| set (other.keys[i], other.values[i]); | set (other.keys[i], other.values[i]); | ||||
| } | } | ||||
| void StringPairArray::clear() throw() | |||||
| void StringPairArray::clear() | |||||
| { | { | ||||
| keys.clear(); | keys.clear(); | ||||
| values.clear(); | values.clear(); | ||||
| } | } | ||||
| void StringPairArray::remove (const String& key) throw() | |||||
| void StringPairArray::remove (const String& key) | |||||
| { | { | ||||
| remove (keys.indexOf (key, ignoreCase)); | remove (keys.indexOf (key, ignoreCase)); | ||||
| } | } | ||||
| void StringPairArray::remove (const int index) throw() | |||||
| void StringPairArray::remove (const int index) | |||||
| { | { | ||||
| keys.remove (index); | keys.remove (index); | ||||
| values.remove (index); | values.remove (index); | ||||
| } | } | ||||
| void StringPairArray::setIgnoresCase (const bool shouldIgnoreCase) throw() | |||||
| void StringPairArray::setIgnoresCase (const bool shouldIgnoreCase) | |||||
| { | { | ||||
| ignoreCase = shouldIgnoreCase; | ignoreCase = shouldIgnoreCase; | ||||
| } | } | ||||
| @@ -142,7 +141,7 @@ const String StringPairArray::getDescription() const | |||||
| return s; | return s; | ||||
| } | } | ||||
| void StringPairArray::minimiseStorageOverheads() throw() | |||||
| void StringPairArray::minimiseStorageOverheads() | |||||
| { | { | ||||
| keys.minimiseStorageOverheads(); | keys.minimiseStorageOverheads(); | ||||
| values.minimiseStorageOverheads(); | values.minimiseStorageOverheads(); | ||||
| @@ -40,16 +40,16 @@ class JUCE_API StringPairArray | |||||
| public: | public: | ||||
| //============================================================================== | //============================================================================== | ||||
| /** Creates an empty array */ | /** Creates an empty array */ | ||||
| StringPairArray (const bool ignoreCaseWhenComparingKeys = true) throw(); | |||||
| StringPairArray (bool ignoreCaseWhenComparingKeys = true); | |||||
| /** Creates a copy of another array */ | /** Creates a copy of another array */ | ||||
| StringPairArray (const StringPairArray& other) throw(); | |||||
| StringPairArray (const StringPairArray& other); | |||||
| /** Destructor. */ | /** Destructor. */ | ||||
| ~StringPairArray() throw(); | |||||
| ~StringPairArray(); | |||||
| /** Copies the contents of another string array into this one */ | /** Copies the contents of another string array into this one */ | ||||
| StringPairArray& operator= (const StringPairArray& other) throw(); | |||||
| StringPairArray& operator= (const StringPairArray& other); | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Compares two arrays. | /** Compares two arrays. | ||||
| @@ -58,7 +58,7 @@ public: | |||||
| @returns true only if the other array contains exactly the same strings with the same keys | @returns true only if the other array contains exactly the same strings with the same keys | ||||
| */ | */ | ||||
| bool operator== (const StringPairArray& other) const throw(); | |||||
| bool operator== (const StringPairArray& other) const; | |||||
| /** Compares two arrays. | /** Compares two arrays. | ||||
| @@ -66,7 +66,7 @@ public: | |||||
| @returns false if the other array contains exactly the same strings with the same keys | @returns false if the other array contains exactly the same strings with the same keys | ||||
| */ | */ | ||||
| bool operator!= (const StringPairArray& other) const throw(); | |||||
| bool operator!= (const StringPairArray& other) const; | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Finds the value corresponding to a key string. | /** Finds the value corresponding to a key string. | ||||
| @@ -80,7 +80,7 @@ public: | |||||
| @see getValue | @see getValue | ||||
| */ | */ | ||||
| const String& operator[] (const String& key) const throw(); | |||||
| const String& operator[] (const String& key) const; | |||||
| /** Finds the value corresponding to a key string. | /** Finds the value corresponding to a key string. | ||||
| @@ -92,13 +92,13 @@ public: | |||||
| /** Returns a list of all keys in the array. */ | /** Returns a list of all keys in the array. */ | ||||
| const StringArray& getAllKeys() const throw() { return keys; } | |||||
| const StringArray& getAllKeys() const throw() { return keys; } | |||||
| /** Returns a list of all values in the array. */ | /** Returns a list of all values in the array. */ | ||||
| const StringArray& getAllValues() const throw() { return values; } | |||||
| const StringArray& getAllValues() const throw() { return values; } | |||||
| /** Returns the number of strings in the array */ | /** Returns the number of strings in the array */ | ||||
| inline int size() const throw() { return keys.size(); }; | |||||
| inline int size() const throw() { return keys.size(); }; | |||||
| //============================================================================== | //============================================================================== | ||||
| @@ -107,8 +107,7 @@ public: | |||||
| If a value already exists with this key, its value will be overwritten, | If a value already exists with this key, its value will be overwritten, | ||||
| otherwise the key/value pair will be added to the array. | otherwise the key/value pair will be added to the array. | ||||
| */ | */ | ||||
| void set (const String& key, | |||||
| const String& value) throw(); | |||||
| void set (const String& key, const String& value); | |||||
| /** Adds the items from another array to this one. | /** Adds the items from another array to this one. | ||||
| @@ -118,24 +117,24 @@ public: | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Removes all elements from the array. */ | /** Removes all elements from the array. */ | ||||
| void clear() throw(); | |||||
| void clear(); | |||||
| /** Removes a string from the array based on its key. | /** Removes a string from the array based on its key. | ||||
| If the key isn't found, nothing will happen. | If the key isn't found, nothing will happen. | ||||
| */ | */ | ||||
| void remove (const String& key) throw(); | |||||
| void remove (const String& key); | |||||
| /** Removes a string from the array based on its index. | /** Removes a string from the array based on its index. | ||||
| If the index is out-of-range, no action will be taken. | If the index is out-of-range, no action will be taken. | ||||
| */ | */ | ||||
| void remove (const int index) throw(); | |||||
| void remove (int index); | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Indicates whether to use a case-insensitive search when looking up a key string. | /** Indicates whether to use a case-insensitive search when looking up a key string. | ||||
| */ | */ | ||||
| void setIgnoresCase (const bool shouldIgnoreCase) throw(); | |||||
| void setIgnoresCase (bool shouldIgnoreCase); | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Returns a descriptive string containing the items. | /** Returns a descriptive string containing the items. | ||||
| @@ -151,7 +150,7 @@ public: | |||||
| removing elements, they may have quite a lot of unused space allocated. | removing elements, they may have quite a lot of unused space allocated. | ||||
| This method will reduce the amount of allocated storage to a minimum. | This method will reduce the amount of allocated storage to a minimum. | ||||
| */ | */ | ||||
| void minimiseStorageOverheads() throw(); | |||||
| void minimiseStorageOverheads(); | |||||
| //============================================================================== | //============================================================================== | ||||
| @@ -32,7 +32,7 @@ BEGIN_JUCE_NAMESPACE | |||||
| //============================================================================== | //============================================================================== | ||||
| XmlDocument::XmlDocument (const String& documentText) throw() | |||||
| XmlDocument::XmlDocument (const String& documentText) | |||||
| : originalText (documentText), | : originalText (documentText), | ||||
| ignoreEmptyTextElements (true) | ignoreEmptyTextElements (true) | ||||
| { | { | ||||
| @@ -43,7 +43,7 @@ XmlDocument::XmlDocument (const File& file) | |||||
| inputSource = new FileInputSource (file); | inputSource = new FileInputSource (file); | ||||
| } | } | ||||
| XmlDocument::~XmlDocument() throw() | |||||
| XmlDocument::~XmlDocument() | |||||
| { | { | ||||
| } | } | ||||
| @@ -140,7 +140,7 @@ const String& XmlDocument::getLastParseError() const throw() | |||||
| return lastError; | return lastError; | ||||
| } | } | ||||
| void XmlDocument::setLastError (const String& desc, const bool carryOn) throw() | |||||
| void XmlDocument::setLastError (const String& desc, const bool carryOn) | |||||
| { | { | ||||
| lastError = desc; | lastError = desc; | ||||
| errorOccurred = ! carryOn; | errorOccurred = ! carryOn; | ||||
| @@ -183,7 +183,7 @@ int XmlDocument::findNextTokenLength() throw() | |||||
| return len; | return len; | ||||
| } | } | ||||
| void XmlDocument::skipHeader() throw() | |||||
| void XmlDocument::skipHeader() | |||||
| { | { | ||||
| const juce_wchar* const found = CharacterFunctions::find (input, T("<?xml")); | const juce_wchar* const found = CharacterFunctions::find (input, T("<?xml")); | ||||
| @@ -225,7 +225,7 @@ void XmlDocument::skipHeader() throw() | |||||
| dtdText = String (docType, (int) (input - (docType + 1))).trim(); | dtdText = String (docType, (int) (input - (docType + 1))).trim(); | ||||
| } | } | ||||
| void XmlDocument::skipNextWhiteSpace() throw() | |||||
| void XmlDocument::skipNextWhiteSpace() | |||||
| { | { | ||||
| for (;;) | for (;;) | ||||
| { | { | ||||
| @@ -275,7 +275,7 @@ void XmlDocument::skipNextWhiteSpace() throw() | |||||
| } | } | ||||
| } | } | ||||
| void XmlDocument::readQuotedString (String& result) throw() | |||||
| void XmlDocument::readQuotedString (String& result) | |||||
| { | { | ||||
| const juce_wchar quote = readNextChar(); | const juce_wchar quote = readNextChar(); | ||||
| @@ -325,7 +325,7 @@ void XmlDocument::readQuotedString (String& result) throw() | |||||
| } | } | ||||
| } | } | ||||
| XmlElement* XmlDocument::readNextElement (const bool alsoParseSubElements) throw() | |||||
| XmlElement* XmlDocument::readNextElement (const bool alsoParseSubElements) | |||||
| { | { | ||||
| XmlElement* node = 0; | XmlElement* node = 0; | ||||
| @@ -434,7 +434,7 @@ XmlElement* XmlDocument::readNextElement (const bool alsoParseSubElements) throw | |||||
| return node; | return node; | ||||
| } | } | ||||
| void XmlDocument::readChildElements (XmlElement* parent) throw() | |||||
| void XmlDocument::readChildElements (XmlElement* parent) | |||||
| { | { | ||||
| XmlElement* lastChildNode = 0; | XmlElement* lastChildNode = 0; | ||||
| @@ -620,7 +620,7 @@ void XmlDocument::readChildElements (XmlElement* parent) throw() | |||||
| } | } | ||||
| } | } | ||||
| void XmlDocument::readEntity (String& result) throw() | |||||
| void XmlDocument::readEntity (String& result) | |||||
| { | { | ||||
| // skip over the ampersand | // skip over the ampersand | ||||
| ++input; | ++input; | ||||
| @@ -726,43 +726,33 @@ void XmlDocument::readEntity (String& result) throw() | |||||
| const String XmlDocument::expandEntity (const String& ent) | const String XmlDocument::expandEntity (const String& ent) | ||||
| { | { | ||||
| if (ent.equalsIgnoreCase (T("amp"))) | if (ent.equalsIgnoreCase (T("amp"))) | ||||
| { | |||||
| return T("&"); | return T("&"); | ||||
| } | |||||
| else if (ent.equalsIgnoreCase (T("quot"))) | |||||
| { | |||||
| if (ent.equalsIgnoreCase (T("quot"))) | |||||
| return T("\""); | return T("\""); | ||||
| } | |||||
| else if (ent.equalsIgnoreCase (T("apos"))) | |||||
| { | |||||
| if (ent.equalsIgnoreCase (T("apos"))) | |||||
| return T("\'"); | return T("\'"); | ||||
| } | |||||
| else if (ent.equalsIgnoreCase (T("lt"))) | |||||
| { | |||||
| if (ent.equalsIgnoreCase (T("lt"))) | |||||
| return T("<"); | return T("<"); | ||||
| } | |||||
| else if (ent.equalsIgnoreCase (T("gt"))) | |||||
| { | |||||
| if (ent.equalsIgnoreCase (T("gt"))) | |||||
| return T(">"); | return T(">"); | ||||
| } | |||||
| else if (ent[0] == T('#')) | |||||
| if (ent[0] == T('#')) | |||||
| { | { | ||||
| if (ent[1] == T('x') || ent[1] == T('X')) | if (ent[1] == T('x') || ent[1] == T('X')) | ||||
| { | |||||
| return String::charToString (static_cast <juce_wchar> (ent.substring (2).getHexValue32())); | return String::charToString (static_cast <juce_wchar> (ent.substring (2).getHexValue32())); | ||||
| } | |||||
| else if (ent[1] >= T('0') && ent[1] <= T('9')) | |||||
| { | |||||
| if (ent[1] >= T('0') && ent[1] <= T('9')) | |||||
| return String::charToString (static_cast <juce_wchar> (ent.substring (1).getIntValue())); | return String::charToString (static_cast <juce_wchar> (ent.substring (1).getIntValue())); | ||||
| } | |||||
| setLastError ("illegal escape sequence", false); | setLastError ("illegal escape sequence", false); | ||||
| return T("&"); | return T("&"); | ||||
| } | } | ||||
| else | |||||
| { | |||||
| return expandExternalEntity (ent); | |||||
| } | |||||
| return expandExternalEntity (ent); | |||||
| } | } | ||||
| const String XmlDocument::expandExternalEntity (const String& entity) | const String XmlDocument::expandExternalEntity (const String& entity) | ||||
| @@ -68,7 +68,7 @@ public: | |||||
| The text doesn't actually get parsed until the getDocumentElement() method is | The text doesn't actually get parsed until the getDocumentElement() method is | ||||
| called. | called. | ||||
| */ | */ | ||||
| XmlDocument (const String& documentText) throw(); | |||||
| XmlDocument (const String& documentText); | |||||
| /** Creates an XmlDocument from a file. | /** Creates an XmlDocument from a file. | ||||
| @@ -78,7 +78,7 @@ public: | |||||
| XmlDocument (const File& file); | XmlDocument (const File& file); | ||||
| /** Destructor. */ | /** Destructor. */ | ||||
| ~XmlDocument() throw(); | |||||
| ~XmlDocument(); | |||||
| /** Creates an XmlElement object to represent the main document node. | /** Creates an XmlElement object to represent the main document node. | ||||
| @@ -140,15 +140,15 @@ private: | |||||
| bool needToLoadDTD, ignoreEmptyTextElements; | bool needToLoadDTD, ignoreEmptyTextElements; | ||||
| ScopedPointer <InputSource> inputSource; | ScopedPointer <InputSource> inputSource; | ||||
| void setLastError (const String& desc, const bool carryOn) throw(); | |||||
| void skipHeader() throw(); | |||||
| void skipNextWhiteSpace() throw(); | |||||
| void setLastError (const String& desc, const bool carryOn); | |||||
| void skipHeader(); | |||||
| void skipNextWhiteSpace(); | |||||
| juce_wchar readNextChar() throw(); | juce_wchar readNextChar() throw(); | ||||
| XmlElement* readNextElement (const bool alsoParseSubElements) throw(); | |||||
| void readChildElements (XmlElement* parent) throw(); | |||||
| XmlElement* readNextElement (const bool alsoParseSubElements); | |||||
| void readChildElements (XmlElement* parent); | |||||
| int findNextTokenLength() throw(); | int findNextTokenLength() throw(); | ||||
| void readQuotedString (String& result) throw(); | |||||
| void readEntity (String& result) throw(); | |||||
| void readQuotedString (String& result); | |||||
| void readEntity (String& result); | |||||
| static bool isXmlIdentifierCharSlow (juce_wchar c) throw(); | static bool isXmlIdentifierCharSlow (juce_wchar c) throw(); | ||||
| bool isXmlIdentifierChar (juce_wchar c) const throw(); | bool isXmlIdentifierChar (juce_wchar c) const throw(); | ||||
| @@ -43,8 +43,7 @@ XmlElement::XmlAttributeNode::XmlAttributeNode (const XmlAttributeNode& other) t | |||||
| { | { | ||||
| } | } | ||||
| XmlElement::XmlAttributeNode::XmlAttributeNode (const String& name_, | |||||
| const String& value_) throw() | |||||
| XmlElement::XmlAttributeNode::XmlAttributeNode (const String& name_, const String& value_) throw() | |||||
| : name (name_), | : name (name_), | ||||
| value (value_), | value (value_), | ||||
| next (0) | next (0) | ||||
| @@ -402,24 +401,11 @@ void XmlElement::writeToStream (OutputStream& output, | |||||
| const int lineWrapLength) const | const int lineWrapLength) const | ||||
| { | { | ||||
| if (includeXmlHeader) | if (includeXmlHeader) | ||||
| { | |||||
| output << "<?xml version=\"1.0\" encoding=\"" << encodingType; | |||||
| if (allOnOneLine) | |||||
| output << "\"?> "; | |||||
| else | |||||
| output << "\"?>\r\n\r\n"; | |||||
| } | |||||
| output << "<?xml version=\"1.0\" encoding=\"" << encodingType | |||||
| << (allOnOneLine ? "\"?> " : "\"?>\r\n\r\n"); | |||||
| if (dtdToUse.isNotEmpty()) | if (dtdToUse.isNotEmpty()) | ||||
| { | |||||
| output << dtdToUse; | |||||
| if (allOnOneLine) | |||||
| output << " "; | |||||
| else | |||||
| output << "\r\n"; | |||||
| } | |||||
| output << dtdToUse << (allOnOneLine ? " " : "\r\n"); | |||||
| writeElementAsText (output, allOnOneLine ? -1 : 0, lineWrapLength); | writeElementAsText (output, allOnOneLine ? -1 : 0, lineWrapLength); | ||||
| } | } | ||||
| @@ -168,8 +168,8 @@ public: | |||||
| considered the same; if false, the attributes must | considered the same; if false, the attributes must | ||||
| be in the same order as well | be in the same order as well | ||||
| */ | */ | ||||
| bool isEquivalentTo (const XmlElement* const other, | |||||
| const bool ignoreOrderOfAttributes) const throw(); | |||||
| bool isEquivalentTo (const XmlElement* other, | |||||
| bool ignoreOrderOfAttributes) const throw(); | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Returns an XML text document that represents this element. | /** Returns an XML text document that represents this element. | ||||
| @@ -190,10 +190,10 @@ public: | |||||
| @see writeToStream, writeToFile | @see writeToStream, writeToFile | ||||
| */ | */ | ||||
| const String createDocument (const String& dtdToUse, | const String createDocument (const String& dtdToUse, | ||||
| const bool allOnOneLine = false, | |||||
| const bool includeXmlHeader = true, | |||||
| bool allOnOneLine = false, | |||||
| bool includeXmlHeader = true, | |||||
| const String& encodingType = JUCE_T("UTF-8"), | const String& encodingType = JUCE_T("UTF-8"), | ||||
| const int lineWrapLength = 60) const; | |||||
| int lineWrapLength = 60) const; | |||||
| /** Writes the document to a stream as UTF-8. | /** Writes the document to a stream as UTF-8. | ||||
| @@ -212,10 +212,10 @@ public: | |||||
| */ | */ | ||||
| void writeToStream (OutputStream& output, | void writeToStream (OutputStream& output, | ||||
| const String& dtdToUse, | const String& dtdToUse, | ||||
| const bool allOnOneLine = false, | |||||
| const bool includeXmlHeader = true, | |||||
| bool allOnOneLine = false, | |||||
| bool includeXmlHeader = true, | |||||
| const String& encodingType = JUCE_T("UTF-8"), | const String& encodingType = JUCE_T("UTF-8"), | ||||
| const int lineWrapLength = 60) const; | |||||
| int lineWrapLength = 60) const; | |||||
| /** Writes the element to a file as an XML document. | /** Writes the element to a file as an XML document. | ||||
| @@ -239,7 +239,7 @@ public: | |||||
| bool writeToFile (const File& destinationFile, | bool writeToFile (const File& destinationFile, | ||||
| const String& dtdToUse, | const String& dtdToUse, | ||||
| const String& encodingType = JUCE_T("UTF-8"), | const String& encodingType = JUCE_T("UTF-8"), | ||||
| const int lineWrapLength = 60) const; | |||||
| int lineWrapLength = 60) const; | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Returns this element's tag type name. | /** Returns this element's tag type name. | ||||
| @@ -274,7 +274,7 @@ public: | |||||
| @see getAttributeValue, getStringAttribute | @see getAttributeValue, getStringAttribute | ||||
| */ | */ | ||||
| const String& getAttributeName (const int attributeIndex) const throw(); | |||||
| const String& getAttributeName (int attributeIndex) const throw(); | |||||
| /** Returns the value of one of the elements attributes. | /** Returns the value of one of the elements attributes. | ||||
| @@ -283,7 +283,7 @@ public: | |||||
| @see getAttributeName, getStringAttribute | @see getAttributeName, getStringAttribute | ||||
| */ | */ | ||||
| const String& getAttributeValue (const int attributeIndex) const throw(); | |||||
| const String& getAttributeValue (int attributeIndex) const throw(); | |||||
| //============================================================================== | //============================================================================== | ||||
| // Attribute-handling methods.. | // Attribute-handling methods.. | ||||
| @@ -318,7 +318,7 @@ public: | |||||
| */ | */ | ||||
| bool compareAttribute (const String& attributeName, | bool compareAttribute (const String& attributeName, | ||||
| const String& stringToCompareAgainst, | const String& stringToCompareAgainst, | ||||
| const bool ignoreCase = false) const throw(); | |||||
| bool ignoreCase = false) const throw(); | |||||
| /** Returns the value of a named attribute as an integer. | /** Returns the value of a named attribute as an integer. | ||||
| @@ -331,7 +331,7 @@ public: | |||||
| @see setAttribute | @see setAttribute | ||||
| */ | */ | ||||
| int getIntAttribute (const String& attributeName, | int getIntAttribute (const String& attributeName, | ||||
| const int defaultReturnValue = 0) const; | |||||
| int defaultReturnValue = 0) const; | |||||
| /** Returns the value of a named attribute as floating-point. | /** Returns the value of a named attribute as floating-point. | ||||
| @@ -344,7 +344,7 @@ public: | |||||
| @see setAttribute | @see setAttribute | ||||
| */ | */ | ||||
| double getDoubleAttribute (const String& attributeName, | double getDoubleAttribute (const String& attributeName, | ||||
| const double defaultReturnValue = 0.0) const; | |||||
| double defaultReturnValue = 0.0) const; | |||||
| /** Returns the value of a named attribute as a boolean. | /** Returns the value of a named attribute as a boolean. | ||||
| @@ -357,7 +357,7 @@ public: | |||||
| with this name | with this name | ||||
| */ | */ | ||||
| bool getBoolAttribute (const String& attributeName, | bool getBoolAttribute (const String& attributeName, | ||||
| const bool defaultReturnValue = false) const; | |||||
| bool defaultReturnValue = false) const; | |||||
| /** Adds a named attribute to the element. | /** Adds a named attribute to the element. | ||||
| @@ -388,7 +388,7 @@ public: | |||||
| @param newValue the value to set it to | @param newValue the value to set it to | ||||
| */ | */ | ||||
| void setAttribute (const String& attributeName, | void setAttribute (const String& attributeName, | ||||
| const int newValue); | |||||
| int newValue); | |||||
| /** Adds a named attribute to the element, setting it to a floating-point value. | /** Adds a named attribute to the element, setting it to a floating-point value. | ||||
| @@ -403,7 +403,7 @@ public: | |||||
| @param newValue the value to set it to | @param newValue the value to set it to | ||||
| */ | */ | ||||
| void setAttribute (const String& attributeName, | void setAttribute (const String& attributeName, | ||||
| const double newValue); | |||||
| double newValue); | |||||
| /** Removes a named attribute from the element. | /** Removes a named attribute from the element. | ||||
| @@ -479,7 +479,7 @@ public: | |||||
| @returns the n'th child of this element, or 0 if the index is out-of-range | @returns the n'th child of this element, or 0 if the index is out-of-range | ||||
| @see getNextElement, isTextElement, getChildByName | @see getNextElement, isTextElement, getChildByName | ||||
| */ | */ | ||||
| XmlElement* getChildElement (const int index) const throw(); | |||||
| XmlElement* getChildElement (int index) const throw(); | |||||
| /** Returns the first sub-element with a given tag-name. | /** Returns the first sub-element with a given tag-name. | ||||
| @@ -512,7 +512,7 @@ public: | |||||
| below zero, it will be added to the end of the list | below zero, it will be added to the end of the list | ||||
| @see addChildElement, insertChildElement | @see addChildElement, insertChildElement | ||||
| */ | */ | ||||
| void insertChildElement (XmlElement* const newChildNode, | |||||
| void insertChildElement (XmlElement* newChildNode, | |||||
| int indexToInsertAt) throw(); | int indexToInsertAt) throw(); | ||||
| /** Creates a new element with the given name and returns it, after adding it | /** Creates a new element with the given name and returns it, after adding it | ||||
| @@ -538,8 +538,8 @@ public: | |||||
| existing element will be deleted, replaced with the new one, and it | existing element will be deleted, replaced with the new one, and it | ||||
| will return true. | will return true. | ||||
| */ | */ | ||||
| bool replaceChildElement (XmlElement* const currentChildElement, | |||||
| XmlElement* const newChildNode) throw(); | |||||
| bool replaceChildElement (XmlElement* currentChildElement, | |||||
| XmlElement* newChildNode) throw(); | |||||
| /** Removes a child element. | /** Removes a child element. | ||||
| @@ -547,8 +547,8 @@ public: | |||||
| @param shouldDeleteTheChild if true, the child will be deleted, if false it'll | @param shouldDeleteTheChild if true, the child will be deleted, if false it'll | ||||
| just remove it | just remove it | ||||
| */ | */ | ||||
| void removeChildElement (XmlElement* const childToRemove, | |||||
| const bool shouldDeleteTheChild) throw(); | |||||
| void removeChildElement (XmlElement* childToRemove, | |||||
| bool shouldDeleteTheChild) throw(); | |||||
| /** Deletes all the child elements in the element. | /** Deletes all the child elements in the element. | ||||
| @@ -568,7 +568,7 @@ public: | |||||
| /** Recursively searches all sub-elements to find one that contains the specified | /** Recursively searches all sub-elements to find one that contains the specified | ||||
| child element. | child element. | ||||
| */ | */ | ||||
| XmlElement* findParentElementOf (const XmlElement* const elementToLookFor) throw(); | |||||
| XmlElement* findParentElementOf (const XmlElement* elementToLookFor) throw(); | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Sorts the child elements using a comparator. | /** Sorts the child elements using a comparator. | ||||
| @@ -706,14 +706,9 @@ private: | |||||
| XmlAttributeNode* attributes; | XmlAttributeNode* attributes; | ||||
| XmlElement (int) throw(); // for internal use | |||||
| XmlElement (int) throw(); | |||||
| void copyChildrenAndAttributesFrom (const XmlElement& other) throw(); | void copyChildrenAndAttributesFrom (const XmlElement& other) throw(); | ||||
| void writeElementAsText (OutputStream& out, | |||||
| const int indentationLevel, | |||||
| const int lineWrapLength) const; | |||||
| void writeElementAsText (OutputStream& out, int indentationLevel, int lineWrapLength) const; | |||||
| void getChildElementsAsArray (XmlElement**) const throw(); | void getChildElementsAsArray (XmlElement**) const throw(); | ||||
| void reorderChildElements (XmlElement** const, const int) throw(); | void reorderChildElements (XmlElement** const, const int) throw(); | ||||
| }; | }; | ||||