Kactus2
Kactus2 reference guide
Loading...
Searching...
No Matches
ResetInterface.h
Go to the documentation of this file.
1//-----------------------------------------------------------------------------
2// File: ResetInterface.h
3//-----------------------------------------------------------------------------
4// Project: Kactus2
5// Author: Mikko Teuho
6// Date: 20.04.2020
7//
8// Description:
9// Interface for editing resets.
10//-----------------------------------------------------------------------------
11
12#ifndef RESETINTERFACE_H
13#define RESETINTERFACE_H
14
15#include <KactusAPI/KactusAPIGlobal.h>
16
18#include <CommonInterface.h>
19
20class Field;
21class FieldReset;
22class FieldValidator;
23
24//-----------------------------------------------------------------------------
26//-----------------------------------------------------------------------------
28{
29
30public:
31
39 ResetInterface(QSharedPointer<FieldValidator> validator,
40 QSharedPointer<ExpressionParser> expressionParser,
41 QSharedPointer<ExpressionFormatter> expressionFormatter);
42
46 virtual ~ResetInterface() = default;
47
53 void setResets(QSharedPointer<Field> containingField);
54
60 virtual std::vector<std::string> getItemNames() const;
61
67 virtual int itemCount() const override final;
68
76 std::string getResetTypeReference(int const& itemIndex) const;
77
86 bool setResetTypeReference(int const& resetIndex, std::string const& newResetType);
87
96 std::string getResetValue(int const& resetIndex, int const& baseNumber = 0) const;
97
105 std::string getResetValueFormattedExpression(int const& resetIndex) const;
106
114 std::string getResetValueExpression(int const& resetIndex) const;
115
124 bool setResetValue(int const& resetIndex, std::string const& newResetValue);
125
134 std::string getResetMaskValue(int const& resetIndex, int const& baseNumber = 0) const;
135
143 std::string getResetMaskFormattedExpression(int const& resetIndex) const;
144
152 std::string getResetMaskExpression(int const& resetIndex) const;
153
162 bool setResetMask(int const& resetIndex, std::string const& newResetMask);
163
169 virtual bool validateItems() const override final;
170
178 bool hasValidResetType(int const& resetIndex) const;
179
187 bool hasValidResetValue(int const& resetIndex) const;
188
196 bool hasValidResetMask(int const& resetIndex) const;
197
203 void addReset(int const& row);
204
212 bool removeReset(int const& resetIndex);
213
222 virtual int getAllReferencesToIdInItem(const std::string& itemName, std::string const& valueID) const
223 override final;
224
233 int getAllReferencesToIdInIndex(int const& itemIndex, std::string const& valueID) const;
234
235private:
236
244 QSharedPointer<FieldReset> getReset(int const& resetIndex) const;
245
246 //-----------------------------------------------------------------------------
247 // Data.
248 //-----------------------------------------------------------------------------
249
251 QSharedPointer<Field> containingField_;
252
254 QSharedPointer<QList<QSharedPointer<FieldReset> > > resets_;
255
257 QSharedPointer<FieldValidator> validator_;
258};
259
260#endif // RESETINTERFACE_H
CommonInterface()=default
ParameterizableInterface(QSharedPointer< ExpressionParser > expressionParser, QSharedPointer< ExpressionFormatter > expressionFormatter)
bool hasValidResetType(int const &resetIndex) const
int getAllReferencesToIdInIndex(int const &itemIndex, std::string const &valueID) const
void addReset(int const &row)
std::string getResetValueFormattedExpression(int const &resetIndex) const
std::string getResetMaskFormattedExpression(int const &resetIndex) const
ResetInterface(QSharedPointer< FieldValidator > validator, QSharedPointer< ExpressionParser > expressionParser, QSharedPointer< ExpressionFormatter > expressionFormatter)
bool setResetValue(int const &resetIndex, std::string const &newResetValue)
bool hasValidResetValue(int const &resetIndex) const
virtual int getAllReferencesToIdInItem(const std::string &itemName, std::string const &valueID) const override final
bool setResetTypeReference(int const &resetIndex, std::string const &newResetType)
bool hasValidResetMask(int const &resetIndex) const
virtual int itemCount() const override final
std::string getResetValue(int const &resetIndex, int const &baseNumber=0) const
bool setResetMask(int const &resetIndex, std::string const &newResetMask)
virtual ~ResetInterface()=default
std::string getResetMaskExpression(int const &resetIndex) const
void setResets(QSharedPointer< Field > containingField)
virtual bool validateItems() const override final
std::string getResetTypeReference(int const &itemIndex) const
virtual std::vector< std::string > getItemNames() const
bool removeReset(int const &resetIndex)
std::string getResetMaskValue(int const &resetIndex, int const &baseNumber=0) const
std::string getResetValueExpression(int const &resetIndex) const