GToolBar.h 561 B

12345678910111213141516171819202122232425
  1. #pragma once
  2. #include <LibGUI/GWidget.h>
  3. class GAction;
  4. class GToolBar : public GWidget {
  5. public:
  6. explicit GToolBar(GWidget* parent);
  7. virtual ~GToolBar() override;
  8. void add_action(Retained<GAction>&&);
  9. void add_separator();
  10. private:
  11. virtual const char* class_name() const override { return "GToolBar"; }
  12. virtual void paint_event(GPaintEvent&) override;
  13. struct Item {
  14. enum Type { Invalid, Separator, Action };
  15. Type type { Invalid };
  16. RetainPtr<GAction> action;
  17. };
  18. Vector<OwnPtr<Item>> m_items;
  19. };