From abfa5238cacc17a8d6c521c7f9e9396bc2190c67 Mon Sep 17 00:00:00 2001 From: Sebastien Barre Date: Thu, 24 May 2001 13:40:46 -0400 Subject: [PATCH] new Capitalized function. Will be used in the VTK Tcl wrapper for example (in a more portable way). --- Source/cmSystemTools.cxx | 15 +++++++++++++++ Source/cmSystemTools.h | 6 ++++++ 2 files changed, 21 insertions(+) diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index 7f9bb1259..3e9642f9a 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -316,6 +316,21 @@ bool cmSystemTools::FileExists(const char* filename) } +// Return a capitalized string (i.e the first letter is uppercased, all other +// are lowercased) +std::string cmSystemTools::Capitalized(std::string& s) +{ + std::string n; + n.resize(s.size()); + n[0] = toupper(s[0]); + for (size_t i = 1; i < s.size(); i++) + { + n[i] = tolower(s[i]); + } + return n; +} + + // convert windows slashes to unix slashes \ with / void cmSystemTools::ConvertToUnixSlashes(std::string& path) { diff --git a/Source/cmSystemTools.h b/Source/cmSystemTools.h index 1d5c53312..665acc1bc 100644 --- a/Source/cmSystemTools.h +++ b/Source/cmSystemTools.h @@ -78,6 +78,12 @@ public: */ static std::string EscapeSpaces(const char*); + /** + * Return a capitalized string (i.e the first letter is uppercased, all other + * are lowercased). + */ + static std::string Capitalized(std::string&); + /** * Replace Windows file system slashes with Unix-style slashes. */