Wizards: allow forcing of first letter to be a capital letter

This adds a flags that enforces capitalization of filenames.

Change-Id: Ie6660f1985a2e96fd68549c5ced1b37c33f064cc
Reviewed-by: Alessandro Portale <alessandro.portale@nokia.com>
This commit is contained in:
Thomas Hartmann
2012-03-19 16:12:51 +01:00
parent d86b2abc0b
commit bbd5d2ddfe
12 changed files with 97 additions and 58 deletions

View File

@@ -68,7 +68,8 @@ static const QRegExp &windowsDeviceSubDirPattern()
// ----------- FileNameValidatingLineEdit
FileNameValidatingLineEdit::FileNameValidatingLineEdit(QWidget *parent) :
BaseValidatingLineEdit(parent),
m_allowDirectories(false)
m_allowDirectories(false),
m_forceFirstCapitalLetter(false)
{
}
@@ -82,6 +83,16 @@ void FileNameValidatingLineEdit::setAllowDirectories(bool v)
m_allowDirectories = v;
}
bool FileNameValidatingLineEdit::forceFirstCapitalLetter() const
{
return m_forceFirstCapitalLetter;
}
void FileNameValidatingLineEdit::setForceFirstCapitalLetter(bool b)
{
m_forceFirstCapitalLetter = b;
}
/* Validate a file base name, check for forbidden characters/strings. */
#ifdef Q_OS_WIN
@@ -147,6 +158,17 @@ bool FileNameValidatingLineEdit::validate(const QString &value, QString *errorM
&& validateFileName(value, allowDirectories(), errorMessage);
}
QString FileNameValidatingLineEdit::fixInputString(const QString &string)
{
if (!forceFirstCapitalLetter())
return string;
QString fixedString = string;
if (!string.isEmpty() && string.at(0).isLower())
fixedString[0] = string.at(0).toUpper();
return fixedString;
}
bool FileNameValidatingLineEdit::validateFileNameExtension(const QString &fileName,
const QStringList &requiredExtensions,