LibGUI: Create an alias for Widget UnregisteredChildHandler

This commit is contained in:
Sam Atkins 2023-01-07 11:59:12 +00:00 committed by Linus Groh
parent 33f42e3490
commit 703da34947
Notes: sideshowbarker 2024-07-17 16:23:55 +09:00
4 changed files with 9 additions and 8 deletions

View File

@ -102,7 +102,7 @@ void ScrollableContainerWidget::set_widget(GUI::Widget* widget)
update_widget_position();
}
ErrorOr<void> ScrollableContainerWidget::load_from_gml_ast(NonnullRefPtr<GUI::GML::Node> ast, ErrorOr<NonnullRefPtr<Core::Object>> (*unregistered_child_handler)(DeprecatedString const&))
ErrorOr<void> ScrollableContainerWidget::load_from_gml_ast(NonnullRefPtr<GUI::GML::Node> ast, UnregisteredChildHandler unregistered_child_handler)
{
if (is<GUI::GML::GMLFile>(ast.ptr()))
return load_from_gml_ast(static_ptr_cast<GUI::GML::GMLFile>(ast)->main_class(), unregistered_child_handler);

View File

@ -30,7 +30,7 @@ private:
void update_widget_size();
void update_widget_position();
void update_widget_min_size();
virtual ErrorOr<void> load_from_gml_ast(NonnullRefPtr<GUI::GML::Node> ast, ErrorOr<NonnullRefPtr<Core::Object>> (*unregistered_child_handler)(DeprecatedString const&)) override;
virtual ErrorOr<void> load_from_gml_ast(NonnullRefPtr<GUI::GML::Node> ast, UnregisteredChildHandler) override;
ScrollableContainerWidget();

View File

@ -1153,7 +1153,7 @@ ErrorOr<void> Widget::try_load_from_gml(StringView gml_string)
});
}
ErrorOr<void> Widget::try_load_from_gml(StringView gml_string, ErrorOr<NonnullRefPtr<Core::Object>> (*unregistered_child_handler)(DeprecatedString const&))
ErrorOr<void> Widget::try_load_from_gml(StringView gml_string, UnregisteredChildHandler unregistered_child_handler)
{
auto value = TRY(GML::parse_gml(gml_string));
return load_from_gml_ast(value, unregistered_child_handler);
@ -1164,12 +1164,12 @@ bool Widget::load_from_gml(StringView gml_string)
return !try_load_from_gml(gml_string).is_error();
}
bool Widget::load_from_gml(StringView gml_string, ErrorOr<NonnullRefPtr<Core::Object>> (*unregistered_child_handler)(DeprecatedString const&))
bool Widget::load_from_gml(StringView gml_string, UnregisteredChildHandler unregistered_child_handler)
{
return !try_load_from_gml(gml_string, unregistered_child_handler).is_error();
}
ErrorOr<void> Widget::load_from_gml_ast(NonnullRefPtr<GUI::GML::Node> ast, ErrorOr<NonnullRefPtr<Core::Object>> (*unregistered_child_handler)(DeprecatedString const&))
ErrorOr<void> Widget::load_from_gml_ast(NonnullRefPtr<GUI::GML::Node> ast, UnregisteredChildHandler unregistered_child_handler)
{
if (is<GUI::GML::GMLFile>(ast.ptr()))
return load_from_gml_ast(static_ptr_cast<GUI::GML::GMLFile>(ast)->main_class(), unregistered_child_handler);

View File

@ -353,12 +353,13 @@ public:
AK::Variant<Gfx::StandardCursor, NonnullRefPtr<Gfx::Bitmap>> const& override_cursor() const { return m_override_cursor; }
void set_override_cursor(AK::Variant<Gfx::StandardCursor, NonnullRefPtr<Gfx::Bitmap>>);
using UnregisteredChildHandler = ErrorOr<NonnullRefPtr<Core::Object>>(DeprecatedString const&);
ErrorOr<void> try_load_from_gml(StringView);
ErrorOr<void> try_load_from_gml(StringView, ErrorOr<NonnullRefPtr<Core::Object>> (*unregistered_child_handler)(DeprecatedString const&));
ErrorOr<void> try_load_from_gml(StringView, UnregisteredChildHandler);
// FIXME: Replace all uses of load_from_gml() with try_load_from_gml()
bool load_from_gml(StringView gml_string);
bool load_from_gml(StringView, ErrorOr<NonnullRefPtr<Core::Object>> (*unregistered_child_handler)(DeprecatedString const&));
bool load_from_gml(StringView, UnregisteredChildHandler);
// FIXME: remove this when all uses of shrink_to_fit are eliminated
void set_shrink_to_fit(bool);
@ -367,7 +368,7 @@ public:
bool has_pending_drop() const;
// In order for others to be able to call this, it needs to be public.
virtual ErrorOr<void> load_from_gml_ast(NonnullRefPtr<GUI::GML::Node> ast, ErrorOr<NonnullRefPtr<Core::Object>> (*unregistered_child_handler)(DeprecatedString const&));
virtual ErrorOr<void> load_from_gml_ast(NonnullRefPtr<GUI::GML::Node> ast, UnregisteredChildHandler);
protected:
Widget();