aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/libs/qmljs/qmljsreformatter.cpp31
-rw-r--r--tests/auto/qml/reformatter/enum.qml14
2 files changed, 45 insertions, 0 deletions
diff --git a/src/libs/qmljs/qmljsreformatter.cpp b/src/libs/qmljs/qmljsreformatter.cpp
index 3d838651e24..94898532472 100644
--- a/src/libs/qmljs/qmljsreformatter.cpp
+++ b/src/libs/qmljs/qmljsreformatter.cpp
@@ -534,6 +534,37 @@ protected:
return false;
}
+ bool visit(UiEnumDeclaration *ast) override
+ {
+ out(ast->enumToken);
+ out(" ");
+ out(ast->name.toString());
+ out(" ");
+ out("{"); // TODO: out(ast->lbraceToken);
+ newLine();
+
+ accept(ast->members);
+
+ out(ast->rbraceToken);
+ return false;
+ }
+
+ bool visit(UiEnumMemberList *list) override
+ {
+ for (UiEnumMemberList *it = list; it; it = it->next) {
+ out(it->memberToken);
+ if (it->valueToken.isValid()) {
+ out(" = ");
+ out(it->valueToken);
+ }
+ if (it->next) {
+ out(",");
+ }
+ newLine();
+ }
+ return false;
+ }
+
bool visit(UiImport *ast) override
{
out("import ", ast->importToken);
diff --git a/tests/auto/qml/reformatter/enum.qml b/tests/auto/qml/reformatter/enum.qml
new file mode 100644
index 00000000000..769386494d0
--- /dev/null
+++ b/tests/auto/qml/reformatter/enum.qml
@@ -0,0 +1,14 @@
+import QtQuick 2.0
+
+Item {
+ enum Test {
+ A,
+ B
+ }
+
+ enum TestWithValues {
+ A = 11.1,
+ B,
+ C = 3
+ }
+}