12 QTreeWidgetItem* parent,
15 parent(parent), tree(tree), type(type)
18 SIGNAL(customContextMenuRequested(
const QPoint&)),
22 &QTreeWidget::itemDoubleClicked,
24 &AronTreeWidgetController::onTreeWidgetItemDoubleClicked);
29 v.setTopLevelWidget(tree);
45 new QTreeWidgetItem(parent, {QString::fromStdString(
"No args")});
50 &QTreeWidget::itemChanged,
52 &AronTreeWidgetController::onTreeWidgetItemChanged);
82 tree->blockSignals(
true);
84 auto idx = tree->indexAt(pos);
94 tree->blockSignals(
false);
98 AronTreeWidgetController::onTreeWidgetItemDoubleClicked(QTreeWidgetItem* item,
int column)
104 tree->blockSignals(
true);
107 if (column == 1 && aronItem)
116 auto modal = v.createdModal;
123 else if (aronItem->col1Editable)
125 item->treeWidget()->editItem(item, column);
128 else if (column == 0 && aronItem && aronItem->col0Editable)
130 item->treeWidget()->editItem(item, column);
133 tree->blockSignals(
false);
137 AronTreeWidgetController::onTreeWidgetItemChanged(QTreeWidgetItem* item,
int column)
140 tree->blockSignals(
true);
145 aronElem->onUserChange(column);
149 if (parent->childCount() == 1)
154 aronTreeRoot->resetError();
155 AronTreeWidgetConverterVisitor
v(parent, 0);
157 aronTreeRoot->setValueErrorState(
v.hasDirectError(),
v.onlyChildFailedConversion());
162 tree->blockSignals(
false);
static PointerType DynamicCastAndCheck(const VariantPtr &n)
std::shared_ptr< Dict > DictPtr
void visit(VisitorImplementation &v, typename VisitorImplementation::Input &o)
void visit(VisitorImplementation &v, typename VisitorImplementation::Input &t)
The visit function.
std::shared_ptr< Object > ObjectPtr
double v(double t, double v0, double a0, double j)