forked from qt-creator/qt-creator
CppEditor: Extend Q_PROPERTY quickfix
... to also generate the RESET function. Fixes: QTCREATORBUG-11809 Change-Id: I94789227230a67f074ff5fdc76ad8113d2870dd6 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
@@ -1552,11 +1552,11 @@ void CppEditorPlugin::test_quickfix_data()
|
||||
QTest::newRow("InsertQtPropertyMembers")
|
||||
<< CppQuickFixFactoryPtr(new InsertQtPropertyMembers)
|
||||
<< _("struct XmarksTheSpot {\n"
|
||||
" @Q_PROPERTY(int it READ getIt WRITE setIt NOTIFY itChanged)\n"
|
||||
" @Q_PROPERTY(int it READ getIt WRITE setIt RESET resetIt NOTIFY itChanged)\n"
|
||||
"};\n"
|
||||
)
|
||||
<< _("struct XmarksTheSpot {\n"
|
||||
" Q_PROPERTY(int it READ getIt WRITE setIt NOTIFY itChanged)\n"
|
||||
" Q_PROPERTY(int it READ getIt WRITE setIt RESET resetIt NOTIFY itChanged)\n"
|
||||
"\n"
|
||||
"public:\n"
|
||||
" int getIt() const\n"
|
||||
@@ -1573,6 +1573,10 @@ void CppEditorPlugin::test_quickfix_data()
|
||||
" m_it = it;\n"
|
||||
" emit itChanged(m_it);\n"
|
||||
" }\n"
|
||||
" void resetIt()\n"
|
||||
" {\n"
|
||||
" setIt({}); // TODO: Adapt to use your actual default value\n"
|
||||
" }\n"
|
||||
"\n"
|
||||
"signals:\n"
|
||||
" void itChanged(int it);\n"
|
||||
@@ -1582,6 +1586,67 @@ void CppEditorPlugin::test_quickfix_data()
|
||||
"};\n"
|
||||
);
|
||||
|
||||
QTest::newRow("InsertQtPropertyMembersResetWithoutSet")
|
||||
<< CppQuickFixFactoryPtr(new InsertQtPropertyMembers)
|
||||
<< _("struct XmarksTheSpot {\n"
|
||||
" @Q_PROPERTY(int it READ getIt RESET resetIt NOTIFY itChanged)\n"
|
||||
"};\n"
|
||||
)
|
||||
<< _("struct XmarksTheSpot {\n"
|
||||
" Q_PROPERTY(int it READ getIt RESET resetIt NOTIFY itChanged)\n"
|
||||
"\n"
|
||||
"public:\n"
|
||||
" int getIt() const\n"
|
||||
" {\n"
|
||||
" return m_it;\n"
|
||||
" }\n"
|
||||
"\n"
|
||||
"public slots:\n"
|
||||
" void resetIt()\n"
|
||||
" {\n"
|
||||
" static const int defaultValue{}; // TODO: Adapt to use your actual default value\n"
|
||||
" if (m_it == defaultValue)\n"
|
||||
" return;\n"
|
||||
"\n"
|
||||
" m_it = defaultValue;\n"
|
||||
" emit itChanged(m_it);\n"
|
||||
" }\n"
|
||||
"\n"
|
||||
"signals:\n"
|
||||
" void itChanged(int it);\n"
|
||||
"\n"
|
||||
"private:\n"
|
||||
" int m_it;\n"
|
||||
"};\n"
|
||||
);
|
||||
|
||||
QTest::newRow("InsertQtPropertyMembersResetWithoutSetAndNotify")
|
||||
<< CppQuickFixFactoryPtr(new InsertQtPropertyMembers)
|
||||
<< _("struct XmarksTheSpot {\n"
|
||||
" @Q_PROPERTY(int it READ getIt RESET resetIt)\n"
|
||||
"};\n"
|
||||
)
|
||||
<< _("struct XmarksTheSpot {\n"
|
||||
" Q_PROPERTY(int it READ getIt RESET resetIt)\n"
|
||||
"\n"
|
||||
"public:\n"
|
||||
" int getIt() const\n"
|
||||
" {\n"
|
||||
" return m_it;\n"
|
||||
" }\n"
|
||||
"\n"
|
||||
"public slots:\n"
|
||||
" void resetIt()\n"
|
||||
" {\n"
|
||||
" static const int defaultValue{}; // TODO: Adapt to use your actual default value\n"
|
||||
" m_it = defaultValue;\n"
|
||||
" }\n"
|
||||
"\n"
|
||||
"private:\n"
|
||||
" int m_it;\n"
|
||||
"};\n"
|
||||
);
|
||||
|
||||
QTest::newRow("InsertQtPropertyMembersPrivateBeforePublic")
|
||||
<< CppQuickFixFactoryPtr(new InsertQtPropertyMembers)
|
||||
<< _("class XmarksTheSpot {\n"
|
||||
|
||||
Reference in New Issue
Block a user