ladybird/DevTools/VisualBuilder/VBWidgetRegistry.h
Andreas Kling 73fdbba59c AK: Rename <AK/AKString.h> to <AK/String.h>
This was a workaround to be able to build on case-insensitive file
systems where it might get confused about <string.h> vs <String.h>.

Let's just not support building that way, so String.h can have an
objectively nicer name. :^)
2019-09-06 15:36:54 +02:00

27 lines
653 B
C++

#pragma once
#include "VBWidgetType.h"
#include <AK/String.h>
#include <AK/HashMap.h>
#include <AK/NonnullOwnPtrVector.h>
#include <AK/OwnPtr.h>
class GWidget;
class VBProperty;
class VBWidget;
class VBWidgetRegistry {
public:
template<typename Callback>
static void for_each_widget_type(Callback callback)
{
for (unsigned i = 1; i < (unsigned)VBWidgetType::__Count; ++i)
callback((VBWidgetType)i);
}
static GWidget* build_gwidget(VBWidget&, VBWidgetType, GWidget* parent, NonnullOwnPtrVector<VBProperty>&);
};
String to_class_name(VBWidgetType);
VBWidgetType widget_type_from_class_name(const StringView&);