breadcrumb.h 475 B

123456789101112131415161718192021222324
  1. #pragma once
  2. #include <QListWidget>
  3. #include "qtwidgets_global.h"
  4. namespace craftlab::ui
  5. {
  6. class QTWIDGETS_EXPORT Breadcrumb : virtual public QWidget
  7. {
  8. Q_OBJECT
  9. public:
  10. Breadcrumb(QWidget* parent = nullptr);
  11. void clear();
  12. void addItem(const QString& label);
  13. void addItem(const QIcon& icon, const QString& label);
  14. private:
  15. void addItem(QListWidgetItem*);
  16. QWidget* BuildItemWidget(const QListWidgetItem& item);
  17. std::unique_ptr<QListWidget> inner;
  18. };
  19. }