diff --git a/userspace/libraries/LibGUI/CMakeLists.txt b/userspace/libraries/LibGUI/CMakeLists.txt index 361b17f3..7f81b5fc 100644 --- a/userspace/libraries/LibGUI/CMakeLists.txt +++ b/userspace/libraries/LibGUI/CMakeLists.txt @@ -1,5 +1,11 @@ set(LIBGUI_SOURCES Texture.cpp + Widget/Button.cpp + Widget/Grid.cpp + Widget/Label.cpp + Widget/RoundedWidget.cpp + Widget/TextArea.cpp + Widget/Widget.cpp Window.cpp ) diff --git a/userspace/libraries/LibGUI/Widget/Button.cpp b/userspace/libraries/LibGUI/Widget/Button.cpp new file mode 100644 index 00000000..eeebc96c --- /dev/null +++ b/userspace/libraries/LibGUI/Widget/Button.cpp @@ -0,0 +1,60 @@ +#include +#include +#include + +namespace LibGUI::Widget +{ + + BAN::ErrorOr> Button::create(BAN::RefPtr parent, BAN::StringView text, Rectangle geometry) + { + auto* button_ptr = new Button(parent, geometry); + if (button_ptr == nullptr) + return BAN::Error::from_errno(ENOMEM); + auto button = BAN::RefPtr