20#ifndef LIBREPCB_EDITOR_CATEGORYTREEMODEL_H
21#define LIBREPCB_EDITOR_CATEGORYTREEMODEL_H
37class WorkspaceLibraryDb;
38class WorkspaceSettings;
50 public slint::Model<ui::TreeViewItemData> {
61 Q_DECLARE_FLAGS(Filters,
Filter)
68 Filters filters, const
std::optional<
Uuid>& hiddenCategory =
std::nullopt,
69 QObject* parent =
nullptr) noexcept;
74 std::optional<ui::TreeViewItemData>
row_data(
std::
size_t i) const override;
The Uuid class is a replacement for QUuid to get UUID strings without {} braces.
Definition uuid.h:56
The WorkspaceLibraryDb class.
Definition workspacelibrarydb.h:58
Container for all workspace related settings.
Definition workspacesettings.h:60
The CategoryTreeModel class.
Definition categorytreemodel.h:50
void loadChilds(const std::optional< Uuid > &parent, int level)
Definition categorytreemodel.cpp:109
const slint::Image mIcon
Definition categorytreemodel.h:89
const WorkspaceLibraryDb & mDb
Definition categorytreemodel.h:85
std::optional< ui::TreeViewItemData > row_data(std::size_t i) const override
Definition categorytreemodel.cpp:71
void refresh() noexcept
Definition categorytreemodel.cpp:80
std::size_t row_count() const override
Definition categorytreemodel.cpp:67
const WorkspaceSettings & mSettings
Definition categorytreemodel.h:86
const Filters mFilters
Definition categorytreemodel.h:87
Filter
Definition categorytreemodel.h:55
@ CmpCat
Show all component categories, even empty ones.
@ PkgCat
Show all package categories, even empty ones.
std::vector< ui::TreeViewItemData > mItems
Definition categorytreemodel.h:90
const std::optional< Uuid > mHiddenCategory
Definition categorytreemodel.h:88
Definition occmodel.cpp:77