Просмотр исходного кода

LibGfx: Add to_string() functions for MetricRole and PathRole

Sam Atkins 3 лет назад
Родитель
Сommit
31ce4d04b6
1 измененных файлов с 32 добавлено и 0 удалено
  1. 32 0
      Userland/Libraries/LibGfx/SystemTheme.h

+ 32 - 0
Userland/Libraries/LibGfx/SystemTheme.h

@@ -143,6 +143,22 @@ enum class MetricRole {
         __Count,
         __Count,
 };
 };
 
 
+inline const char* to_string(MetricRole role)
+{
+    switch (role) {
+    case MetricRole::NoRole:
+        return "NoRole";
+#undef __ENUMERATE_METRIC_ROLE
+#define __ENUMERATE_METRIC_ROLE(role) \
+    case MetricRole::role:            \
+        return #role;
+        ENUMERATE_METRIC_ROLES(__ENUMERATE_METRIC_ROLE)
+#undef __ENUMERATE_METRIC_ROLE
+    default:
+        VERIFY_NOT_REACHED();
+    }
+}
+
 enum class PathRole {
 enum class PathRole {
     NoRole,
     NoRole,
 
 
@@ -154,6 +170,22 @@ enum class PathRole {
         __Count,
         __Count,
 };
 };
 
 
+inline const char* to_string(PathRole role)
+{
+    switch (role) {
+    case PathRole::NoRole:
+        return "NoRole";
+#undef __ENUMERATE_PATH_ROLE
+#define __ENUMERATE_PATH_ROLE(role) \
+    case PathRole::role:            \
+        return #role;
+        ENUMERATE_PATH_ROLES(__ENUMERATE_PATH_ROLE)
+#undef __ENUMERATE_PATH_ROLE
+    default:
+        VERIFY_NOT_REACHED();
+    }
+}
+
 struct SystemTheme {
 struct SystemTheme {
     RGBA32 color[(int)ColorRole::__Count];
     RGBA32 color[(int)ColorRole::__Count];
     int metric[(int)MetricRole::__Count];
     int metric[(int)MetricRole::__Count];