20#ifndef LIBREPCB_EDITOR_CATEGORYTREEBUILDER_H
21#define LIBREPCB_EDITOR_CATEGORYTREEBUILDER_H
26#include <optional/tl/optional.hpp>
37class WorkspaceLibraryDb;
49template <
typename ElementType>
58 const QStringList& localeOrder,
59 bool nulloptIsRootCategory)
noexcept;
79 bool* success =
nullptr) const;
This class represents absolute, well-formatted paths to files or directories.
Definition: filepath.h:129
The Uuid class is a replacement for QUuid to get UUID strings without {} braces.
Definition: uuid.h:58
The WorkspaceLibraryDb class.
Definition: workspacelibrarydb.h:58
Helper class to extract a category tree from librepcb::WorkspaceLibraryDb.
Definition: categorytreebuilder.h:50
const WorkspaceLibraryDb & mDb
Definition: categorytreebuilder.h:89
const bool mNulloptIsRootCategory
Definition: categorytreebuilder.h:91
bool getParentNames(const tl::optional< Uuid > &category, QStringList &names, QSet< FilePath > &filePaths) const
Definition: categorytreebuilder.cpp:75
QStringList buildTree(const tl::optional< Uuid > &category, bool *success=nullptr) const
Build the parents tree for a specific category.
Definition: categorytreebuilder.cpp:59
CategoryTreeBuilder(const CategoryTreeBuilder &other)=delete
~CategoryTreeBuilder() noexcept
Definition: categorytreebuilder.cpp:51
const QStringList & mLocaleOrder
Definition: categorytreebuilder.h:90
CategoryTreeBuilder()=delete
Definition: occmodel.cpp:77