mirror of
https://github.com/amyinspace/MagicSetEditor2.git
synced 2026-06-12 13:37:00 -04:00
compatibility with wxWdigets 2.9+: work around a bug in wx 2.9.1 (should be fixed in newer releases)
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1531 0fc631ac-6414-0410-93d0-97cfa31319b6
This commit is contained in:
+7
-5
@@ -141,7 +141,7 @@ bool is_word_end_punctuation(Char c) {
|
|||||||
// ----------------------------------------------------------------------------- : Caseing
|
// ----------------------------------------------------------------------------- : Caseing
|
||||||
|
|
||||||
/// Quick check to see if the substring starting at the given iterator is equal to some given string
|
/// Quick check to see if the substring starting at the given iterator is equal to some given string
|
||||||
bool is_substr(const String& s, String::iterator it, const Char* cmp) {
|
bool is_substr(const String& s, String::const_iterator it, const Char* cmp) {
|
||||||
while (it != s.end() && *cmp != 0) {
|
while (it != s.end() && *cmp != 0) {
|
||||||
if (*it++ != *cmp++) return false;
|
if (*it++ != *cmp++) return false;
|
||||||
}
|
}
|
||||||
@@ -156,7 +156,9 @@ String capitalize(const String& s) {
|
|||||||
after_space = true;
|
after_space = true;
|
||||||
} else if (after_space) {
|
} else if (after_space) {
|
||||||
after_space = false;
|
after_space = false;
|
||||||
if (it != s.begin() &&
|
// See http://trac.wxwidgets.org/ticket/12594
|
||||||
|
//if (it != s.begin() &&
|
||||||
|
if (s.begin() != it &&
|
||||||
(is_substr(result,it,_("is ")) || is_substr(result,it,_("the ")) ||
|
(is_substr(result,it,_("is ")) || is_substr(result,it,_("the ")) ||
|
||||||
is_substr(result,it,_("in ")) || is_substr(result,it,_("of ")) ||
|
is_substr(result,it,_("in ")) || is_substr(result,it,_("of ")) ||
|
||||||
is_substr(result,it,_("to ")) || is_substr(result,it,_("at ")) ||
|
is_substr(result,it,_("to ")) || is_substr(result,it,_("at ")) ||
|
||||||
@@ -390,7 +392,7 @@ bool is_substr(const String& str, size_t pos, const Char* cmp) {
|
|||||||
return *cmp == _('\0');
|
return *cmp == _('\0');
|
||||||
}
|
}
|
||||||
bool is_substr(const String& str, size_t pos, const String& cmp) {
|
bool is_substr(const String& str, size_t pos, const String& cmp) {
|
||||||
return is_substr(str, pos, cmp.c_str());
|
return str.size() >= cmp.size() + pos && str.compare(pos, cmp.size(), cmp) == 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -401,7 +403,7 @@ bool is_substr_i(const String& str, size_t pos, const Char* cmp) {
|
|||||||
return *cmp == _('\0');
|
return *cmp == _('\0');
|
||||||
}
|
}
|
||||||
bool is_substr_i(const String& str, size_t pos, const String& cmp) {
|
bool is_substr_i(const String& str, size_t pos, const String& cmp) {
|
||||||
return is_substr_i(str, pos, cmp.c_str());
|
return is_substr_i(str, pos, static_cast<const Char*>(cmp.c_str()));
|
||||||
}
|
}
|
||||||
|
|
||||||
bool cannocial_name_compare(const String& as, const Char* b) {
|
bool cannocial_name_compare(const String& as, const Char* b) {
|
||||||
@@ -437,7 +439,7 @@ String regex_escape(Char c) {
|
|||||||
/// Escape a string for use in regular expressions
|
/// Escape a string for use in regular expressions
|
||||||
String regex_escape(const String& s) {
|
String regex_escape(const String& s) {
|
||||||
String ret;
|
String ret;
|
||||||
FOR_EACH_CONST(c,s) ret += regex_escape(c);
|
FOR_EACH_CONST(c,s) ret += regex_escape(static_cast<char>(c));
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user