12#ifndef FILESETINTERFACE_H
13#define FILESETINTERFACE_H
15#include <KactusAPI/KactusAPIGlobal.h>
20#include <QSharedPointer>
25class FileSetValidator;
47 QSharedPointer<ExpressionParser> expressionParser,
48 QSharedPointer<ExpressionFormatter> expressionFormatter,
62 void setFileSets(QSharedPointer<QList<QSharedPointer<FileSet> > > newFileSets);
71 virtual int getItemIndex(std::string
const& itemName)
const override final;
94 virtual std::vector<std::
string>
getItemNames() const override final;
104 virtual
bool setName(std::
string const& currentName, std::
string const& newName) override final;
129 std::vector<std::
string>
getGroups(std::
string const& fileSetName) const;
139 bool setGroups(std::
string const& fileSetName, std::vector<std::
string> const& newGroups);
158 bool setDependencies(std::
string const& fileSetName, std::vector<std::
string> const& newDependencies);
166 void addFileSet(
int const& row, std::
string const& newFileSetName = std::
string(
""));
174 void addFileSet(std::
string const& newFileSetName = std::
string(
""));
237 QSharedPointer<FileSet> getFileSet(std::
string const& fileSetName) const;
246 QSharedPointer<NameGroup> getItem(std::
string const& fileSetName) const override;
253 QSharedPointer<QList<QSharedPointer<FileSet> > > fileSets_;
256 QSharedPointer<FileSetValidator> validator_;
Interface for editing file builders.
Interface for editing files.
FileSetInterface(QSharedPointer< FileSetValidator > validator, QSharedPointer< ExpressionParser > expressionParser, QSharedPointer< ExpressionFormatter > expressionFormatter, FileInterface *fileInterface, FileBuilderInterface *fileBuilderInterface)
virtual bool validateItems() const override final
std::vector< std::string > getDependencies(std::string const &fileSetName) const
bool fileSetExists(std::string const &fileSetName) const
virtual std::vector< std::string > getItemNames() const override final
void setFileSets(QSharedPointer< QList< QSharedPointer< FileSet > > > newFileSets)
virtual bool itemHasValidName(std::string const &itemName) const override final
virtual ~FileSetInterface()=default
bool removeFileSet(std::string const &fileSetName)
bool setGroups(std::string const &fileSetName, std::vector< std::string > const &newGroups)
FileInterface * getFileInterface() const
bool setDependencies(std::string const &fileSetName, std::vector< std::string > const &newDependencies)
virtual int getItemIndex(std::string const &itemName) const override final
std::vector< std::string > getExpressionsInSelectedFileSets(std::vector< std::string > fileSetNames) const
virtual int itemCount() const override final
FileBuilderInterface * getFileBuilderInterface() const
virtual bool setName(std::string const ¤tName, std::string const &newName) override final
virtual int getAllReferencesToIdInItem(const std::string &itemName, std::string const &valueID) const override final
std::string getIndexedItemName(int itemIndex) const final
void addFileSet(int const &row, std::string const &newFileSetName=std::string(""))
std::vector< std::string > getGroups(std::string const &fileSetName) const
ParameterizableInterface(QSharedPointer< ExpressionParser > expressionParser, QSharedPointer< ExpressionFormatter > expressionFormatter)