From b67909452961b4f9e18b942a70e332d567c5c83f Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Mon, 14 Aug 2023 06:47:48 +0200 Subject: [PATCH] LibGUI: Remove remaining fallible Layout APIs --- Userland/Libraries/LibGUI/Layout.cpp | 50 +++++++++------------------- Userland/Libraries/LibGUI/Layout.h | 6 +--- 2 files changed, 17 insertions(+), 39 deletions(-) diff --git a/Userland/Libraries/LibGUI/Layout.cpp b/Userland/Libraries/LibGUI/Layout.cpp index 4b91ac79ec..bed40e62e9 100644 --- a/Userland/Libraries/LibGUI/Layout.cpp +++ b/Userland/Libraries/LibGUI/Layout.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018-2020, Andreas Kling + * Copyright (c) 2018-2023, Andreas Kling * Copyright (c) 2022, the SerenityOS developers. * * SPDX-License-Identifier: BSD-2-Clause @@ -60,17 +60,11 @@ void Layout::notify_disowned(Badge, Widget& widget) m_entries.clear(); } -ErrorOr Layout::try_add_entry(Entry&& entry) -{ - TRY(m_entries.try_append(move(entry))); - if (m_owner) - m_owner->notify_layout_changed({}); - return {}; -} - void Layout::add_entry(Entry&& entry) { - MUST(try_add_entry(move(entry))); + m_entries.append(move(entry)); + if (m_owner) + m_owner->notify_layout_changed({}); } void Layout::add_spacer() @@ -86,36 +80,24 @@ void Layout::add_layout(OwnPtr&& layout) add_entry(move(entry)); } -ErrorOr Layout::try_add_widget(Widget& widget) -{ - TRY(try_add_entry(Entry { - .type = Entry::Type::Widget, - .widget = widget, - })); - return {}; -} - void Layout::add_widget(Widget& widget) { - MUST(try_add_widget(widget)); -} - -ErrorOr Layout::try_insert_widget_before(Widget& widget, Widget& before_widget) -{ - Entry entry; - entry.type = Entry::Type::Widget; - entry.widget = widget; - TRY(m_entries.try_insert_before_matching(move(entry), [&](auto& existing_entry) { - return existing_entry.type == Entry::Type::Widget && existing_entry.widget.ptr() == &before_widget; - })); - if (m_owner) - m_owner->notify_layout_changed({}); - return {}; + add_entry(Entry { + .type = Entry::Type::Widget, + .widget = widget, + }); } void Layout::insert_widget_before(Widget& widget, Widget& before_widget) { - MUST(try_insert_widget_before(widget, before_widget)); + Entry entry; + entry.type = Entry::Type::Widget; + entry.widget = widget; + m_entries.insert_before_matching(move(entry), [&](auto& existing_entry) { + return existing_entry.type == Entry::Type::Widget && existing_entry.widget.ptr() == &before_widget; + }); + if (m_owner) + m_owner->notify_layout_changed({}); } void Layout::remove_widget(Widget& widget) diff --git a/Userland/Libraries/LibGUI/Layout.h b/Userland/Libraries/LibGUI/Layout.h index 503d0fb62b..c6d9c42e67 100644 --- a/Userland/Libraries/LibGUI/Layout.h +++ b/Userland/Libraries/LibGUI/Layout.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018-2020, Andreas Kling + * Copyright (c) 2018-2023, Andreas Kling * * SPDX-License-Identifier: BSD-2-Clause */ @@ -38,9 +38,6 @@ public: void add_layout(OwnPtr&&); void add_spacer(); - ErrorOr try_add_widget(Widget&); - ErrorOr try_insert_widget_before(Widget& widget, Widget& before_widget); - void remove_widget(Widget&); virtual void run(Widget&) = 0; @@ -73,7 +70,6 @@ protected: OwnPtr layout {}; }; void add_entry(Entry&&); - ErrorOr try_add_entry(Entry&&); WeakPtr m_owner; Vector m_entries;