diff options
Diffstat (limited to 'src/libs/utils/filenamevalidatinglineedit.cpp')
-rw-r--r-- | src/libs/utils/filenamevalidatinglineedit.cpp | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/src/libs/utils/filenamevalidatinglineedit.cpp b/src/libs/utils/filenamevalidatinglineedit.cpp index 8aab1aea73..a90356e190 100644 --- a/src/libs/utils/filenamevalidatinglineedit.cpp +++ b/src/libs/utils/filenamevalidatinglineedit.cpp @@ -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. */ @@ -144,6 +155,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, |