summaryrefslogtreecommitdiffhomepage
path: root/options/defs.hpp
diff options
context:
space:
mode:
authorStanislaw Halik <sthalik@misaki.pl>2018-06-22 16:53:28 +0200
committerStanislaw Halik <sthalik@misaki.pl>2018-06-26 23:01:53 +0200
commitceee2f51c7c97bd8e6c2702b7b1fe811ef912711 (patch)
treeadba786722c5c484b8ca01ee8d2f141c9cee7b8d /options/defs.hpp
parent5e67fb0e8a94f9180cb304023242ac54e0def45b (diff)
options/metatype: simplify
Diffstat (limited to 'options/defs.hpp')
-rw-r--r--options/defs.hpp22
1 files changed, 10 insertions, 12 deletions
diff --git a/options/defs.hpp b/options/defs.hpp
index f14a1cbe..58846cc3 100644
--- a/options/defs.hpp
+++ b/options/defs.hpp
@@ -1,5 +1,7 @@
#pragma once
+#include "compat/macros.hpp"
+
#include <QString>
#include <QMetaType>
@@ -8,23 +10,19 @@
#define OTR_OPTIONS_EXPAND2(x) x
#define OTR_OPTIONS_EXPAND1(x) OTR_OPTIONS_EXPAND2(x)
-#define OPENTRACK_REGISTER_METATYPE2(t, ctr) \
- OPENTRACK_REGISTER_METATYPE3(t, ctr)
+#define OPENTRACK_DEFINE_METATYPE2(t, ctr) \
+ OPENTRACK_DEFINE_METATYPE3(t, ctr)
-#define OPENTRACK_REGISTER_METATYPE3(t, sym) \
- OPENTRACK_REGISTER_METATYPE4(t, init_metatype_ ## sym)
+#define OPENTRACK_DEFINE_METATYPE3(t, ctr) \
+ OPENTRACK_DEFINE_METATYPE4(t, init_metatype_ ## ctr)
-#define OPENTRACK_REGISTER_METATYPE4(t, sym) \
- class sym { \
+#define OPENTRACK_DEFINE_METATYPE4(t, sym) \
+ static class sym { \
static const int dribble; \
} sym ## _singleton; \
- const int sym :: dribble = ::options::detail::custom_type_initializer::declare_for_type<t>(#t)
+ const int sym :: dribble = ::options::detail::custom_type_initializer::declare_for_type<t>(#t);
-#if defined Q_CREATOR_RUN
-# define OPENTRACK_DEFINE_METATYPE(t)
-#else
-# define OPENTRACK_DEFINE_METATYPE(t) OPENTRACK_REGISTER_METATYPE2(t, OTR_OPTIONS_EXPAND1(__COUNTER__))
-#endif
+#define OPENTRACK_DEFINE_METATYPE(t) OPENTRACK_DEFINE_METATYPE2(t, __COUNTER__)
namespace options {
namespace detail {