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