21#include "cc_tools_qt/ToolsField.h"
33class CC_TOOLS_API ToolsArrayListField :
public ToolsField
37 using ActPtr = std::unique_ptr<ToolsArrayListField>;
39 ToolsArrayListField();
40 ToolsArrayListField(
const ToolsArrayListField&) =
delete;
41 ToolsArrayListField& operator=(
const ToolsArrayListField&) =
delete;
43 virtual ~ToolsArrayListField() noexcept;
47 void removeField(
int idx);
49 unsigned size() const;
51 bool hasFixedSize() const;
53 void adjustFixedSize();
55 void refreshMembers();
60 virtual
void addFieldImpl() = 0;
61 virtual
void removeFieldImpl(
int idx) = 0;
62 virtual
unsigned sizeImpl() const = 0;
63 virtual
bool hasFixedSizeImpl() const = 0;
64 virtual
void adjustFixedSizeImpl() = 0;
65 virtual
void refreshMembersImpl() = 0;
67 void dispatchImpl(ToolsFieldHandler& handler);
70using ToolsArrayListFieldPtr = ToolsArrayListField::ActPtr;