From 8dda4e4ab5dab1dca4de042e47a3763962f9e654 Mon Sep 17 00:00:00 2001 From: thankyouverycool <66646555+thankyouverycool@users.noreply.github.com> Date: Wed, 10 May 2023 16:59:36 -0400 Subject: [PATCH] LibGUI: Add fallible factories to ItemListModel --- Userland/Libraries/LibGUI/ItemListModel.h | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/Userland/Libraries/LibGUI/ItemListModel.h b/Userland/Libraries/LibGUI/ItemListModel.h index 224ec72fe4..848f3e7165 100644 --- a/Userland/Libraries/LibGUI/ItemListModel.h +++ b/Userland/Libraries/LibGUI/ItemListModel.h @@ -36,6 +36,17 @@ public: return adopt_ref(*new ItemListModel(data, row_count)); } + static ErrorOr> try_create(Container const& data, ColumnNamesT const& column_names, Optional const& row_count = {}) + requires(IsTwoDimensional) + { + return adopt_nonnull_ref_or_enomem(new (nothrow) ItemListModel(data, column_names, row_count)); + } + static ErrorOr> try_create(Container const& data, Optional const& row_count = {}) + requires(!IsTwoDimensional) + { + return adopt_nonnull_ref_or_enomem(new (nothrow) ItemListModel(data, row_count)); + } + virtual ~ItemListModel() override = default; virtual int row_count(ModelIndex const& index) const override