#ifndef SHARED_SETTINGS_MESSAGE_TREE_H #define SHARED_SETTINGS_MESSAGE_TREE_H #include #include namespace Shared { class SettingsMessageTree : public MessageTree { public: constexpr SettingsMessageTree(I18n::Message label = I18n::Message::Default) : MessageTree(label, 0), m_children(nullptr) {} template constexpr SettingsMessageTree(I18n::Message label, const SettingsMessageTree (&children)[N] = nullptr) : MessageTree(label, N), m_children(children) {} const MessageTree * childAtIndex(int index) const override { return &m_children[index]; } private: const SettingsMessageTree * m_children; }; } #endif