20#include "cc_tools_qt/details/ToolsNumericFieldBase.h"
22#include <QtCore/QList>
23#include <QtCore/QPair>
33class CC_TOOLS_API ToolsEnumField :
public cc_tools_qt::details::ToolsNumericFieldBase<long long int>
35 using Base = cc_tools_qt::details::ToolsNumericFieldBase<long long int>;
37 using UnderlyingType = Base::UnderlyingType;
38 using ActPtr = std::unique_ptr<ToolsEnumField>;
39 using ValueInfo = QPair<QString, long long>;
40 using ValueInfosList = QList<ValueInfo>;
43 virtual ~ToolsEnumField() noexcept;
45 const ValueInfosList& values() const;
50 virtual const ValueInfosList& valuesImpl() const = 0;
52 virtual
void dispatchImpl(ToolsFieldHandler& handler) override;
55using ToolsEnumFieldPtr = std::unique_ptr<ToolsEnumField>;