summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikolai Kosjar <nikolai.kosjar@qt.io>2016-06-21 10:34:23 +0200
committerNikolai Kosjar <nikolai.kosjar@qt.io>2016-06-22 12:20:25 +0000
commitb928a1ce46a810941a54c42b20f4692f2db2ebb0 (patch)
tree1998103a2385829aa746e987d7102d6c3906ec0f
parent5a78fcb434619bf035eafbc2fcd6c27dc29a8dc9 (diff)
downloadqt-creator-b928a1ce46a810941a54c42b20f4692f2db2ebb0.tar.gz
CppEditor: Extract determineGetterSetterNames()
...and make it a bit more readable since we are going to make some changes there. Change-Id: Ic1d0c47a36ef4547a4842508c2404e9fc12f5220 Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
-rw-r--r--src/plugins/cppeditor/cppquickfixes.cpp35
1 files changed, 24 insertions, 11 deletions
diff --git a/src/plugins/cppeditor/cppquickfixes.cpp b/src/plugins/cppeditor/cppquickfixes.cpp
index 157032953d..604243d6d3 100644
--- a/src/plugins/cppeditor/cppquickfixes.cpp
+++ b/src/plugins/cppeditor/cppquickfixes.cpp
@@ -2832,17 +2832,7 @@ public:
}
m_variableString = QString::fromUtf8(variableId->chars(), variableId->size());
- m_baseName = memberBaseName(m_variableString);
- if (m_baseName.isEmpty())
- m_baseName = QLatin1String("value");
-
- m_getterName = !(m_baseName == m_variableString
- || hasClassMemberWithGetPrefix(m_classSpecifier->symbol))
- ? m_baseName
- : QString::fromLatin1("get%1%2")
- .arg(m_baseName.left(1).toUpper()).arg(m_baseName.mid(1));
- m_setterName = QString::fromLatin1("set%1%2")
- .arg(m_baseName.left(1).toUpper()).arg(m_baseName.mid(1));
+ determineGetterSetterNames();
// Check if the class has already a getter and/or a setter.
// This is only a simple check which should suffice not triggering the
@@ -2909,6 +2899,8 @@ public:
updateDescriptionAndPriority();
}
+ void determineGetterSetterNames();
+
// Clones "other" in order to prevent all the initial detection made in the ctor.
GenerateGetterSetterOperation(const CppQuickFixInterface &interface,
GenerateGetterSetterOperation *other, OperationType type)
@@ -5968,5 +5960,26 @@ void ExtraRefactoringOperations::match(const CppQuickFixInterface &interface,
}
}
+void GenerateGetterSetterOperation::determineGetterSetterNames()
+{
+ m_baseName = memberBaseName(m_variableString);
+ if (m_baseName.isEmpty())
+ m_baseName = QLatin1String("value");
+
+ // Getter Name
+ const bool hasValidBaseName = m_baseName != m_variableString;
+ const bool getPrefixIsAlreadyUsed = hasClassMemberWithGetPrefix(m_classSpecifier->symbol);
+ if (hasValidBaseName && !getPrefixIsAlreadyUsed) {
+ m_getterName = m_baseName;
+ } else {
+ const QString baseNameWithCapital = m_baseName.left(1).toUpper() + m_baseName.mid(1);
+ m_getterName = QLatin1String("get") + baseNameWithCapital;
+ }
+
+ // Setter Name
+ const QString baseNameWithCapital = m_baseName.left(1).toUpper() + m_baseName.mid(1);
+ m_setterName = QLatin1String("set") + baseNameWithCapital;
+}
+
} // namespace Internal
} // namespace CppEditor