21#include "cc_tools_qt/details/ToolsNumericFieldBase.h"
23#include <QtCore/QList>
24#include <QtCore/QPair>
34class CC_TOOLS_API ToolsEnumField :
public cc_tools_qt::details::ToolsNumericFieldBase<long long int>
36 using Base = cc_tools_qt::details::ToolsNumericFieldBase<long long int>;
38 using UnderlyingType = Base::UnderlyingType;
39 using ActPtr = std::unique_ptr<ToolsEnumField>;
40 using ValueInfo = QPair<QString, long long>;
41 using ValueInfosList = QList<ValueInfo>;
44 virtual ~ToolsEnumField() noexcept;
46 const ValueInfosList& values() const;
51 virtual const ValueInfosList& valuesImpl() const = 0;
53 virtual
void dispatchImpl(ToolsFieldHandler& handler) override;
56using ToolsEnumFieldPtr = std::unique_ptr<ToolsEnumField>;